Good evening,
I am porting an application I have been working on from a JMX managed
system to OSGi. My original design was based off an earlier version of
JBoss where you could load different version of JBoss based on command
line parameters. It would create a custom URL classloader based on the
version loaded. Anyway, I have a core launcher which sets up the
Classloader and command line parameters and now loads Felix. In my old
system I have core components which are always available (Logging,
Dependency Management, Configuration, Inter-Service communication
(JGroups), Intra-Service Communication (JMX), Group Communication
(JGroups), etc.) and then I load components that are only used by the
service which was started (Database, UDP Reader, Rules Engine, Socket
Communications, etc.) All of this was controlled via JMX since all of the
components were MBeans. Problem is I found I was spending to much time on
the 'plumbing' and not on solving the business problem. That is the reason
for the port to OSGi.
Ok, enough of the background, my question is "What is the best approach
for Porting a JMX enabled Component to OSGi?" Currently the Components
send and receive 'Events/Message' using JMX (Publish/Subscribe). They are
also managed (stopped/started/unload/loaded/configuration changes, etc.)
using a JMX Console. I also will be running parts of the application
outside of the OSGi container which will need access to components running
inside the OSGi container. Components running inside of the OSGi contain
will need access to resources that are in the classpath (created at
startup).
I have been looking at your wiki, books on OSGi (precious few), Googling
the web, and the last thousand or so email from this group trying to get
my head around this. What would y'all best suggestion to point my efforts?
Thanks for your time!
-Pete Haidinyak