JMS: changes to IBM MQ classes for JMS

For IBM® MQ 8.0, a number of changes are made to IBM MQ classes for JMS.

Enforcement of unique client IDs

As required by the JMS 2.0 specification, the IBM MQ classes for JMS now check that non-null client ids that are provided when making a connection are unique. If not, a javax.jms.InvalidClientIDException is thrown.

Some existing applications that relied on the previous behavior, and that reused client ids, might now fail. To allow such applications to continue to run without coding changes, the check for client id uniqueness can be disabled by setting the system property com.ibm.mq.jms.SupportMQExtensions to true when starting an application.

Changes to CipherSuite support

See Java and JMS: changes to CipherSuite support for further information.

Removal of support for Direct and DirectHTTP transport

Direct and DirectHTTP transport were deprecated in a previous release of IBM MQ and they have been removed at IBM MQ 8.0.

Although Direct IP transport has been removed in IBM MQ 8.0, you can still create and administer a connection factory specifically for Direct IP transport by using MQ Explorer or the JMS administration tool, or programmatically. This means that you can update JNDI connection factories at IBM MQ 8.0 that might be used by an earlier version that does still support Direct IP transport. However, if an attempt is made to create a Version 8.0 connection, the following exception is generated:

JMSFMQ1006: The value of 'DirectIP' for property 'Transport Type' is not valid.