OSGi embedder for ADempiere and other projects

There is a long time demand for embedding a module framework into ADempiere. I have done some work about the issue.

I have created a generic OGSi embedder extending Apache Felix with easily parameterable utility classes.

This embedder is integrated into ADempiere.

It is documented here: http://www.adempiere.com/wiki/index.php?title=ADempiere/OSGi_Integration

The patch for source code and the felixMod.jar files are attached to this blog entry.

Embedder

This embedder has the features:

  • Don't use a constant configuration but create a new one for each started instance in a temporary directory.
  • Start all plugins in a directory on startup. So installing plugins can be done by just copying them.
  • Hot Start plugins, so plugins can be started without restarting the server.
  • Export some packages of the host application, so they can be reached from the osgi bundles.
  • It is a single jar that contains all of felix.jar and the helper classes of this project.

I have incubated the embedder's source code on Sourceforge in the SVN of an other project of me.

It is here: https://coolrmi.svn.sourceforge.net/svnroot/coolrmi/startosgi/trunk/

Build:

$ svn co https://coolrmi.svn.sourceforge.net/svnroot/coolrmi/startosgi/trunk/

$ cd trunk/StartOSGIEmbedded

$ ant

The generated felixMod.jar will be in the "build" directory.

Feel free to send me feedback about the project. You can contact me at:

https://sourceforge.net/users/rizsi/