Software AG Products 10.11 | Administering Integration Server | Configuring Integration Server for JMS Messaging | Supported JMS Providers | Considerations for JMS Providers
 
Considerations for JMS Providers
Review your JMS provider documentation for information about any specific considerations for JMS support.
AMQP Messaging Providers
Integration Server is certified to communicate with the RabbitMQ and Azure Service Bus providers. Integration Server uses the QPID JMS client libraries for AMQP to communicate with these JMS providers. Integration Server was tested with the Qpid JMS AMQP 0-x 6.3.3 JMS client libraries.
Apache ActiveMQ
If you are using SSL/TLS to connect to Apache Active MQ broker, do the following:
*Use the keytool provided by Apache ActiveMQ to create a certificate for the broker, set up key and truststores, and import the ActiveMQ broker's public certificate into Integration Server.
*Use the javax.net.ssl properties to set the location of the keystore and truststore files for connecting with the ActiveMQ broker. For Integration Server, set the javax.net.ssl properties in the custom_wrapper.conf file. For example:
*wrapper.java.additional.n= -Djavax.net.ssl.keystore=keystoreLocation
*wrapper.java.additional.n+1= -Djavax.net.ssl.keyStorePassword=password
*wrapper.java.additional.n+2= -Djavax.net.ssl.trustStore=truststoreLocation
For Microservices Runtime, set Java system properties in the following file using the JAVA_CUSTOM_OPTS property: Integration Server_directory /bin/setenv.bat(sh) .
*If you need to configure two-way SSL with the ActiveMQ broker, import the public certificate for Integration Server into the ActiveMQ broker truststore.
IBM MQ
Integration Server is certified to communicate with IBM MQ 9.0 JMS provider. Consider the following points while connecting to IBM MQ 9.0.
*If you are setting up an SSL connection to IBM MQ 9.0, consider modifying the CipherSuite value in the JNDI .bindings file based on the JRE specified for Integration Server and IBM's recommendation.
*By default, IBM MQ 9.0 supports JMS 2.0 specification. However, Integration Server supports JMS 1.1 specification. Therefore, set the following property to true in Software AG_directory \profiles\IS_instance_name\configuration\custom_wrapper.conf file so that Integration Server functions seamlessly with IBM MQ 9.0.
wrapper.java.additional.availableNumber=-Dcom.ibm.mq.jms.SupportMQExtensions=true
Alternatively, you can set the value of watt.config.systemProperties property as com.ibm.mq.jms.SupportMQExtensions=true.
For Microservices Runtime, set Java system properties in the following file using the JAVA_CUSTOM_OPTS property: Integration Server_directory /bin/setenv.bat(sh) .
Solace PubSub+ Appliance and Cloud
Direct Transport mode in Solace PubSub+ does not support the following features:
*Message selector
*Local transaction support
*Durable subscription
Note:Guaranteed Transport mode in Solace PubSub+ supports the above features.
If you use Direct Transport mode in Solace PubSub+ and your JMS provider uses any of these features, Integration Server responds in these ways:
*If a JMS trigger is subscribed to a topic and uses the Message selector feature, then Integration Server does not enable the trigger and displays the message, Error creating consumer - cannot use selector with direct messaging.
*If the transaction type of a JMS connection alias pointing to Solace PubSub+ is Local transaction or XA transaction, then Integration Server cannot execute the JMS send and receive operations and displays the message, Transacted sessions or XA sessions are not supported with direct transport.
*If a JMS trigger is subscribed to a topic with durable subscriber name, then Integration Server does not enable the trigger and displays the message, Unknown Durable Topic Endpoint.