Support for OSGi

 

Open Services Gateway Initiative (OSGi) provides a framework that supports the deployment of applications as bundles. Three OSGi bundles are supplied as part of WebSphere MQ Java.

OSGi provides a general purpose, secure, and managed Java framework, which supports the deployment of applications that come in the form of bundles. OSGi compliant devices can download and install bundles, and remove them when they are no longer required. The framework manages the installation and update of bundles in a dynamic and scalable fashion.

WebSphere MQ Java includes the following three OSGi bundles. The bundles are in the java/lib/OSGI subdirectory of your WebSphere MQ installation, or the Java\lib\OSGI folder on Windows. version is the WebSphere MQ version number, for example 6.0.2.0.

com.ibm.mq.osgi.client_version.jar

Provides versions of WebSphere MQ base Java and WebSphere MQ JMS that are able to communicate with WebSphere MQ using a TCP/IP connection

com.ibm.mq.osgi.directip_version.jar

Contains JAR files to allow the client bundle, com.ibm.mq.osgi.client_version.jar, to create a direct connection to a broker

com.ibm.mq.osgi.prereq_version.jar

Contains prerequisite JAR files required by the client bundle
These bundles have been written to the OSGi Release 4 specification. They do not work in an OSGi Release 3 environment.

You must set your system path or library path correctly so that the OSGi runtime environment can find any required DLL files or shared libraries.

If you use the OSGi bundles for WebSphere MQ Java, temporary topics do not work. In addition, channel exit classes written in Java are not supported because of an inherent problem in loading classes in a multiple class loader environment such as OSGi. A user bundle can be aware of the WebSphere MQ Java bundles, but the WebSphere MQ Java bundles are not aware of any user bundle. As a result, the class loader used in a WebSphere MQ Java bundle cannot load a channel exit class that is in a user bundle.

For more information about OSGi, see the OSGi Alliance Web site at http://www.osgi.org.


uj35080_