Friday, 4 June 2010

WebSphere OSGi Applications and SCA

For the past few years I've been working in the OSGi and SCA standards groups with a view to bringing together the best of both worlds in a complementary way. I gave a presentation at the OSGi Users' Forum UK at the beginning of this year on OSGi and SCA and how the two can be combined to add heterogeneous integration capabilities to OSGi services. This included a demo of Apache Aries and Apache Tuscany, turning an Aries OSGi application service into a Web service.

I'm also a member of the WebSphere Application Server team and for the past couple of years have been working on enabling OSGi applications in the WebSphere Application Server programming model and their integration with SCA. Last week IBM made generally available the two feature packs with this support:

The OSGi Applications and JPA 2.0 Feature Pack enables you to develop and deploy modular enterprise OSGi applications, in production and at no additional expense (sounding like a salesman...must stop). Building applications in this way enables greater flexibility, re-use and sharing of components between applications, which itself reduces disk and memory footprint.

The SCA Feature Pack refresh adds a new implementation type (osgiapp) that allows you to take an OSGi application and integrate it with other component types (e.g. Java EE), and/or add protocol bindings to OSGI application services or references (e.g. Web services, Atom, EJB).

All in all, pretty cool, I think, but then I would say that. Hopefully others will agree, but only time will tell....

Thursday, 6 May 2010

Free OSGi Application Tools

One of the problems with developing applications using OSGi is the limited capabilities of the tools. Also, many of the Enterprise OSGi technologies are new, or have recently added OSGi capabilities to existing technologies and hence, require new tools or the existing tools to catch up.

IBM has just made available some free OSGi application tools on DeveloperWorks. These enable you to develop OSGi applications following the design used in Apache Aries and also the WebSphere OSGi application feature pack. They also enable you to develop Web Application Bundles (essentially a WAR with Bundle metadata), Persistence Bundles (a JPA persistence archive with bundle metadata), vanilla OSGi bundles, and to edit Blueprint XML files (a standardized form of the Spring Framework component model). The same tools, and more, are also available in the current RAD beta.

If you give the tools a try, I'd be interested to know what works for you and what doesn't. If you have any problems or require assistance, there's also a forum for you to ask questions.