OSGi modular framework and the MDM Workbench

You use the modular OSGi framework for the development and deployment of the InfoSphere® MDM application. The benefit is that you deploy customizations to the operational server without the need to stop and start the operational server.

Key OSGi components and concepts

One of the key building blocks in OSGi is a bundle. Applications can be deployed as bundles, and there can be multiple versions of a bundle. A bundle is just a .jar file with a special manifest file (MANIFEST.MF) that describes its characteristics as an OSGi bundle. The manifest includes the following information:
  • A unique bundle identification
  • A bundle version number, allowing multiple versions of a bundle to be used concurrently in the same framework instance
  • Declaration of the bundle's external dependencies used by the OSGi framework to resolve the bundle
  • Declaration of the packages that are visible outside the bundle
  • Identification, when relevant, of this bundle as an EJB bundle, which declares any enterprise beans that you want to export as OSGi services

Building upon this modularity, you can associate multiple bundles in a composite bundle, packaged as a CBA file. A composite bundle groups shared bundles together. You can extend a deployed application by associating one or more composite bundles to it. Also, a composite bundle has a composite bundle manifest, a modularity statement declaring that the bundles it contains can be deployed.

Finally, a set of bundles can be collected together and deployed as a single OSGi application that is isolated from other OSGi applications: this is the enterprise bundle archive, or EBA, file.

InfoSphere MDM and the modular OSGi framework

Working with the modular OSGi framework, InfoSphere MDM is packaged and deployed as an EBA. There is no longer a need to open, customize, repackage, and redeploy your customized InfoSphere MDM, because you do not need to open the InfoSphere MDM EBA to include your customizations. Instead, you can generate your customizations in the form of OSGi bundles and package these bundles into CBAs, which you then affix to InfoSphere MDM as it is running using the IBM® WebSphere® Application Server management console.

OSGi blueprint files are used to declare your customization components. Blueprint XML files are included in the individual bundles that are included in the composite bundle CBA. When you deploy your bundles, the OSGi framework in IBM WebSphere Application Server will use the blueprint files and register them with InfoSphere MDM. In many cases, implementing the services described here, you will need to import the interfaces and classes contained in blueprint files. You will be able to tell which packages you need to import by simply looking at the interfaces and classes contained in the blueprint files.



Last updated: 6 May 2015