Interoperation using the IBM MQ messaging provider

Through the IBM® MQ messaging provider in WebSphere® Application Server, Java™ Message Service (JMS) messaging applications can use your IBM MQ system as an external provider of JMS messaging resources.

IBM MQ is characterized as follows:
  • Messaging is handled by a network of queue managers, each running in its own set of processes and having its own administration.
  • Features such as shared queues (on IBM MQ for z/OS®) and IBM MQ clustering simplify administration and provide dynamic discovery.
  • Many IBM and partner products support IBM MQ with (for example) monitoring and control, high availability and clustering.
  • IBM MQ clients can run within WebSphere Application Server (JMS), or almost any other messaging environment by using a variety of APIs.

If your business uses IBM MQ, and you want to integrate WebSphere Application Server messaging applications into a predominantly IBM MQ network, the IBM MQ messaging provider is a logical choice. However, there can be benefits in using another provider.

The IBM MQ messaging provider supports JMS 1.1 domain-independent interfaces (sometimes referred to as unified or common interfaces). This enables applications to use the same interfaces for both point-to-point and publish/subscribe messaging, and also enables both point-to-point and publish/subscribe messaging within the same transaction. With JMS 1.1, this approach is considered good practice for new applications. The domain-specific interfaces are supported for backwards compatibility for applications developed to use domain-specific queue interfaces, as described in section 1.5 of the JMS 1.1 specification.

The IBM MQ messaging provider also supports the Java EE Connector Architecture (JCA) 1.5 activation specification mechanism for message-driven beans (MDBs) across all platforms supported by WebSphere Application Server.

You can use WebSphere Application Server to configure IBM MQ resources for applications (for example queue connection factories) and to manage messages and subscriptions associated with JMS destinations. You administer security through IBM MQ.

WebSphere Application Server Version 6.x contained a IBM MQ JMS client to facilitate interaction with IBM MQ. For WebSphere Application Server Version 7.0 and later this has been replaced with the IBM MQ resource adapter. The resource adapter is included with WebSphere Application Server and does not need to be installed separately. Service updates to the resource adapter are usually applied automatically through WebSphere Application Server fix packs.

You can use the following four IBM MQ connection properties to configure the IBM MQ resource adapter used by the IBM MQ messaging provider. These properties affect the connection pool that is used by activation specifications:
  • maxConnections
  • connectionConcurrency (Setting this property only affects WebSphere Application Server 7 nodes. The property has no effect for WebSphere Application Server Version 8 or later nodes.)
  • reconnectionRetryCount
  • reconnectionRetryInterval

To connect to multi-instance IBM MQ queue managers, you can provide host and port information in the form of a connection name list, which a connection factory or activation specification uses to connect to a multi-instance queue manager.

IBM MQ queue or topic destination properties allow you to specify:
  • Whether an application processes the RFH version 2 header of a IBM MQ message as part of the JMS message body.
  • The format of the JMSReplyTo field.
  • Whether an application can read or write the values of MQMD fields from JMS messages that have been sent or received using the IBM MQ messaging provider.
  • Which message context options are specified when sending messages to a destination.

For more information about using IBM MQ with WebSphere Application Server, see the Product Connectivity Scenarios documentation, which provides information that leads you through the key tasks required to connect WebSphere Application Server to IBM MQ in a variety of scenarios. Each scenario contains the instructions for implementing a solution in a business context, allowing you to learn as you go without needing to make use of other information resources.