« WebSphere Partitioning Facility (WPF) Programming guide online | Main | Tips for efficient frequent JMX calls to WebSphere. »

December 08, 2004

OSGI, not just for clients.

Andrew Binstock recently published an informative article on the uses of OSGI for clients. Andrews article can be viewed here. It's a good introduction on OSGI and you can find another good introduction at this link on OSCAR-OSGI at source forge.

I think OSGI also has a big future on the server side. If we could get the open source and commercial application server vendors using OSGI for their runtime frameworks for servers then a lot of interesting things could happen. Rather than the current situation where every vendor has its own runtime component mechanism and the open source ones are no better here (JBoss with JMX, Apache with GBeans, ...), if we can all agree on OSGI than third parties making plugins for application servers such cache providers, persistence providers should have a much simpler time integrating those products. Maybe products like Tangosol or Gigaspaces could adopt an OSGI based runtime.

Application programmers would benefit from having a standard service registry in which to find these third party plugins. Application servers would be easy to 'upgrade'/integrate with third party function. It has a lot of potential, if we can just get the vendors to agree. I think a positive initial step would be for the open source J2EE servers to adopt OSGI as their runtime framework in lieu of their current private runtimes.

Another thing to think about is how could OSGI impact J2EE, could web modules/ejb modules be bundles. Would this be easier or harder than today. Could JCA RAs be bundles also? Lots of scope here.

If you want to play with OSGI then an OSGI 3.0 is included in IBM Workplace Client Technology, Micro Edition 5.7.1 and this is available for download. An OSGI V3++ is included in Eclipse also.

December 8, 2004 in J2EE | Permalink Sphere


OSGi is Great! When we had to find a technology that would allow us to create a lightweight, platform-independent tool for pushing/pulling files and starting/stopping programs on remote compute nodes, we created a deployable agent using Java, OSGi and TSpaces. The result was a match made in heaven. It works great for grid computing and for distributed computing in general.

Long live OSGi.

Posted by: Toby Lehman | Dec 13, 2004 12:30:32 AM

Your link to Andrew's article is outdated. It should link to the exact article, and not the main page (which has changed). The new link is http://www.sdtimes.com/cols/integrationwatch_115.htm

Posted by: | Dec 27, 2004 2:39:19 PM

Yes, OSGi is a great technology. Until recently, I was the CTO of Possio AB where I decided to use OSGi in two Wireless Routers.
It was fun developing Bluetooth apps as OSGi bundles with Websphere Studio Device Developer.

I hope the OSGi awareness will grow with the help of Eclipse etc.

Posted by: Ulf Söderberg | Jan 1, 2005 9:05:58 AM

Hello folks, what I like most about OSGi is it's clear component model which can be used for so many different applications (in the embedded as well the the enterprise field).

It is running in cars, in gateway, routers, health care devices, remote controllers, on application servers, inside Ecplise, smart home systems, etc. etc.

It'll be interesting to watch OSGi hitting the mobile handset mass market after the OSGi Release 4 will be published in Q3/2005. R4 will contain a lot of new features for mobile applications in particular.

Posted by: Jo Ritter | Jan 7, 2005 9:18:06 AM

Here's a new blog about OSGi.


Posted by: Juss | Jan 10, 2005 4:31:57 PM

I agree that OSGi serverside is a good solution. For me the advantages are : the component model, the versioning of component (equinox), the "hot" deployment, the standardized specifications. I plane to realize an application with EclipseRCP (clientside) and Websphere (serverside) both sides based on OSGi bundles.
Since Websphere is based on the equinox OSGi plattform, it should be theorically possible to deploy my own OSGi plugin and to access it from a serveside application like EJB or Servlet. But I didn't find any documentation how to do this in the practice.

Posted by: Serge Démoulin | Dec 12, 2007 8:48:42 AM

Post a comment