JMS and OSGi Applications

An OSGi application can send and receive Java™ Message Service (JMS) messages. OSGi applications can use JMS resources that are configured within WebSphere® Application Server, in a similar way to using JMS resources with Java EE applications. For OSGi applications, each reference to a JMS resource is declared in a Blueprint XML file.

Each bundle in an OSGi application can contain any number of resource reference declarations in its various Blueprint XML files.

Your OSGi application can bind to any of the following JMS resource types:
  • Default messaging JMS queues destinations
  • Default messaging JMS topic destinations
  • Generic JMS connection factory
  • JMS queue connection factory for the JMS provider of WebSphere MQ
  • JMS queue destination for WebSphere MQ
  • JMS topic connection factory for WebSphere MQ
  • JMS topic destination for WebSphere MQ
  • Unified JMS connection factory for WebSphere MQ
You bind JMS resource references to your OSGi application when you add the EBA asset to a business-level application.

OSGi applications can access and invoke Enterprise JavaBeans (EJBs) directly. However, you can also configure your OSGi application to send JMS messages to destinations, and configure your enterprise beans or message driven beans (MDBs) to retrieve the messages from those destinations and respond to them.