PROVIDERVERSION 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.

The following flowchart shows the checks that the JMS client makes to determine whether a normal mode connection can be created.

Figure 1. PROVIDERVERSION normal mode
The figure is described in the surrounding text.

If the queue manager specified in the connection factory settings has a command level of 800 or greater, and the TRANSPORT property of the connection factory is set to BINDINGS, a normal mode connection is created without checking any further properties.

If the queue manager specified in the connection factory settings has a command level of 800 or greater, and the TRANSPORT property is set to CLIENT, the SHARECNV property on the server connection channel is also checked. This check is needed because IBM MQ messaging provider normal mode uses the sharing conversations feature. Therefore, for a normal mode connection attempt to be successful, the SHARECNV property, which controls the number of conversations that can be shared, must have a value of 1 or greater.

If all the checks shown in the flowchart are successful, a normal mode connection to the queue manager is created and all of the JMS 2.0 API and features, that is, asynchronous send, delayed delivery, and shared subscription, can then be used.

An attempt to create a normal mode connection fails for either of the following reasons:
  • The queue manager specified in the connection factory settings has a command level that is earlier than 800. In this case, the createConnection method fails with an exception JMSFMQ0003.
  • The SHARECNV property on the server connection channel is set to 0. If this property does not have a value of 1 or greater, the createConnection method fails with an exception JMSCC5007.