Accessing IBM MQ from Java programs

Java™ programs that run in CICS® can use either the IBM® MQ classes for Java, or the IBM MQ classes for JMS, to access IBM MQ.

IBM MQ classes for Java encapsulate the Message Queue Interface (MQI), the native IBM MQ API. If you are familiar with the use of the MQI in procedural languages, you can transfer this knowledge to the Java environment. The classes use a similar object model to the C++ and .NET interfaces to IBM MQ. In addition, you can exploit the full range of features of IBM MQ , beyond those available through JMS.

IBM MQ classes for JMS implements the JMS interfaces for IBM MQ as the messaging system. If your organization is new to IBM MQ , but already has JMS application development skills, you might find it easier to use the familiar JMS API to access IBM MQ resources, rather than one of the other APIs provided with IBM MQ.

The IBM MQ classes for Java can only be used in an OSGi JVM server. The IBM MQ classes for JMS can be used in:
  • An OSGI JVM server.
  • A CICS standard-mode Liberty JVM server when the JMS application connects to a queue manager using either bindings or client mode transport.
  • A CICS integrated-mode Liberty JVM server when the JMS application connects to a queue manager using client mode transport.