IBM MQ classes for JMS
IBM® MQ classes for JMS is the JMS provider that is supplied with IBM MQ. IBM MQ classes for JMS implements the interfaces defined in the javax.jms package, and also provides two sets of extensions to the JMS API. Both Java Platform, Standard Edition ( Java SE) and Java Platform, Enterprise Edition ( Java EE) applications can use IBM MQ classes for JMS.
IBM MQ 9.0.5 was the final Continuous Delivery release for IBM MQ 9.0. Therefore, from IBM MQ 9.0.0 Fix Pack 6 onwards, the Javadoc information for the IBM MQ classes for JMS is updated to reflect the behavior of the IBM MQ classes for JMS only for features available to Long Term Support customers.
The JMS specification defines a set of interfaces that applications can use to perform messaging operations. From IBM MQ 8.0, the product supports the JMS 2.0 version of the JMS standard. This implementation offers all the features of the classic API but requires fewer interfaces and is simpler to use. For more information, see The JMS model and the JMS 2.0 specification at Java.net.
- IBM MQ JMS extensions
- IBM JMS extensions
A connection factory, queue, or topic object created using the javax.jms interface or either set of JMS extensions can be addressed using any of these APIs; that is, it can be cast to any of the interfaces. To maintain application portability at the highest level, use the most generic API that is suitable for your requirements.
IBM MQ JMS extensions
IBM MQ classes for JMS also provides extensions to the JMS API. Previous releases of IBM MQ classes for JMS contain extensions that are implemented in MQConnectionFactory, MQQueue, and MQTopic objects. These objects have properties and methods that are specific to IBM MQ. The objects can be administered objects, or an application can create the objects dynamically at run time. From IBM WebSphere® MQ 7.0, IBM MQ classes for JMS maintains these extensions, and you can continue to use, without change, any applications that use these extensions. These extensions are known as the IBM MQ JMS extensions. Note that, in this set of documentation, objects that are created dynamically by an application at run time are not considered to be administered objects.
IBM JMS extensions
- To provide a greater level of consistency across IBM JMS providers
- To make it easier to write a bridge application between two IBM messaging systems
- To make it easier to port an application from one IBM JMS provider to another
A connection factory, queue, or topic object created using the javax.jms interface or either set of JMS extensions can be addressed using any of these APIs; that is, it can be cast to any of the interfaces. To maintain application portability at the highest level, use the most generic API that is suitable for your requirements.