Today’s GA of WebSphere Application Server introduces support for WebSphere MQ using the Java Message Service (JMS) APIs. This support is enabled using the new feature:


The Liberty profile does not include a copy of the WebSphere MQ client. We decided to make the experience of using WebSphere MQ consistent with other resource providers such as databases where the provider specific classes come from the resource provider.

To simplify the deployment of the client libraries we decided to use the WebSphere MQ rar package so there is only a single file that needs to be handled. Normally you can get this from your WebSphere MQ client or server install, but you need a client or server install with APAR IC92914 which is targetted for the release. In the meantime you can download the iFix from Fix Central. There is a technote describing all the details.

Once you have the resource adapter you just need to define a single variable in server.xml to tell the wmqJmsClient-1.1 where the client is

<variable name="wmqJmsClient.rar.location"        

You can then configure your JMS resources.

<jmsConnectionFactory jndiName="jms/qcf1">
  <properties.wmqJms queueManager="qm1"/>
<jmsQueue id="myQueue" jndiName="jms/queue1">
  <properties.wmqJms baseQueueName="MDBQ" />

<jmsActivationSpec id="fvtapp/fvtmdb/FVTMessageDrivenBean">
  <properties.wmqJms destinationRef="myQueue" 

7 comments on"Using WebSphere MQ with the Liberty profile"

  1. If I follow your tutorial I get a Stack Dump = java.lang.ClassNotFoundException: expection. Any idea what I could change?

    • Hi Michael,

      My first guess would be that the wmqJmsClient.rar.location variable is not pointing at the WMQ RAR file, could you confirm if that is pointing to the right place?

  2. Chris Watts July 02, 2013

    I’ve installed the iFix, set it all up and configured a

    However I get the following error:
    ——Start of DE processing—— = [2/07/13 12:54:14:239 EST]
    Exception = javax.naming.NamingException
    Source =
    probeid = 139
    Stack Dump = javax.naming.NamingException: ConnectionFactoryImpl reference is null
    at org.apache.aries.jndi.ObjectFactoryHelper.getObjectInstance(
    at org.apache.aries.jndi.OSGiObjectFactoryBuilder.getObjectInstance(
    at javax.naming.spi.NamingManager.getObjectInstance(
    at org.apache.aries.jndi.DelegateContext.lookup(
    at javax.naming.InitialContext.lookup(
    at org.springframework.jndi.JndiTemplate$1.doInContext(

Join The Discussion

Your email address will not be published. Required fields are marked *