Configure the JMS PROVIDERVERSION property

The IBM MQ messaging provider has three modes of operation: normal mode, normal mode with restrictions, and migration mode. We can set the JMS PROVIDERVERSION property to select which of these modes a JMS application uses to publish and subscribe.


The selection of the IBM MQ messaging provider mode of operation can be primarily controlled by setting the PROVIDERVERSION connection factory property. The mode of operation can also be selected automatically if a mode has not been specified.

The PROVIDERVERSION property differentiates between the three IBM MQ messaging provider modes of operation:

    IBM MQ messaging provider normal mode
    Normal mode uses all the features of an IBM MQ queue manager to implement JMS. This mode is optimized to use the JMS 2.0 API and functionality.

    IBM MQ messaging provider normal mode with restrictions
    Normal mode with restrictions uses the JMS 2.0 API, but not the new features, that is, shared subscriptions, delayed delivery, and asynchronous send.

    IBM MQ messaging provider migration mode
    With migration mode, we can connect to a IBM MQ Version 8.0 or later queue manager, but none of the features of a IBM WebSphere MQ Version 7.0 or later queue manager, such as read ahead and streaming, are used.

Figure 1. Messaging provider modes


Procedure

To configure the PROVIDERVERSION property for a specific connection factory:

To override connection factory provider mode settings for all connection factories in the JVM:

  • To override connection factory provider mode settings, use the com.ibm.msg.client.wmq.overrideProviderVersion property If we cannot change the connection factory that you are using, we can use the com.ibm.msg.client.wmq.overrideProviderVersion property to override any setting on the connection factory. This override applies to all connection factories in the JVM but the actual connection factory objects are not modified.