Wednesday, December 4, 2013

Configure Hermes JMS To Connect Websphere MQ 7.1

Hermes JMS is a good UI based tool to connect to JMS queues that allows all common operations like put, get, browse etc as well as some really rich features. Another plus point with Hermes is its vendor neutral! It can connected to almost any JMS based messaging system with minor configuration.

Recently I configured it with Websphere MQ 7.1. I did faced minor issue initially but later it went smoothly. So here are the steps -


  • Install Websphere MQ on linux as provided in this link. You need to install MQSeriesClient as well to get the required jars which we will use later in Hermes configuration.
  • Copy all the below jars from /<Websphere_MQ_Install_Folder>/java/lib to your local machine.

     com.ibm.mq
     com.ibm.mq.commonservices

     com.ibm.mq.headers

     com.ibm.mq.jmqi
     com.ibm.mq.pcf
     com.ibm.mqjms
     connector
     dhbcore

  • Next open Hermes JMS and click configuration to setup new provider and classpath as shown in image below.
      
  • Goto providers tab and right click to add a new group. Provide some name like "WMQ7".
  • Now add all the jars to this group that we have copied from the Websphere MQ installation and click Ok.
  • Create a new session and select the provider we created in last step. Also select the connection factory class - com.ibm.mq.jms.MQQueueConnnectionFactory.
  • Add properties - hostname, port, queueManager, channel, transportType. TransportType value should be 1 if your are using TCP/IP for communication.
  • Select "IBMWebsphere MQ" in plug-in drop down. Click ok and you are done! Below image shows the fully configured session to Websphere MQ.



NOTE - Make sure that channel name is in ALL CAPS.

Error that I faced while configuring are -
  1. java.lang.NoClassDefFoundError: Could not initialize class com.ibm.mq.MQEnvironment
  2. hermes.browser.dialog.ConnectionFactoryConfigPanel - Could not initialize class com.ibm.mq.jms.MQQueueConnectionFactory
It all went away after adding the correct jars from the Websphere MQ installation folder.




Demystifying OIC, OCI and Oracle SOA CS

What is OIC (Oracle integration cloud), OCI (Oracle cloud infrastructure), and SOA cloud service and how they are different? - This has bee...