I really like the concept of modular bundles as implemented by OSGi.
I also like "managed deployment" services like Google AppEngine (for web application) or Java WebStart (for client software).
These two ideas seem to complement each-other rather well conceptually.
However, the OSGi standard includes a couple of features that make it impossible for implementations like Felix or Equinox to run on top of sandboxed virtual machines, such as AppEngine or Webstart. In these environments, it is not possible to get direct access to a file system, for example, which precludes the OSGi bundle cache that is used to store persistent bundle state and native libraries.
Now, I have no great interest in using native libraries or have persistent bundle state. Is there some framework that implements the core bundle and services concept of OSGi (ideally in a compatible way so that OSGi bundles can be deployed into it as is), but can work without a bundle cache (and other facilities not available in a sandbox)?
I am looking for something like a limited version of Felix that works on AppEngine or WebStart.
Of course, if the WebStart engine and the Google AppEngine just provided OSGi framework services out-of-the-box that would be great, too...
Update: Another very limiting aspect of AppEngine is that you cannot start new Threads. This prevents (among other things) asynchronous bundle life-cycle management. Obviously not an issue with WebStart.
EclipseSource have a patched version of osgi engine that (kind of) working in AppEngine, download the project zip files from the blog: http://eclipsesource.com/blogs/2009/04/10/osgi-on-appengine/
I'm pretty sure it can be done, and This eclipse help page could probably get you started. If I understand it correctly, your bundles must be signed and your jnlp file needs to request all permissions.
You should talk to Chris Aniszczyk. He made it work with Equinox and Knopflerfish. See the screenshot here: http://twitpic.com/300lk He was planning on blogging about it, but I guess he is pretty busy at the moment. Here is the link to his blog: http://mea-bloga.blogspot.com/
http://code.google.com/p/lemmon/
however, check the issues for URLStreamHandler Problem.
No personal experience, just a clue that might help you.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With