I’m currently in a position where I need to be able to use a XA connection to a WMQ queue from a JBoss AS 5.1.0 application server.
I’m using the WMQ resource adaptor “wmq.jmsra.rar”, version 126.96.36.199.
I have found the file in the WMQ 7.5 client downloaded from http://www-01.ibm.com/support/docview.wss?uid=swg24032744
I have a setup where everything works fine when I use non-XA connections, but I’m unable to get the resource adaptor to give an instance of the XAConnectionFactory interface.
In my JBoss application server I have configured the resource adaptor as specified by IBM, to provide a XA connection factory. According to IBM this is done by adding the element <xa-transaction/> when configuring the connection factory in my resource adaptor configuration file.
I have attached my configuration for the resource adaptor to this topic. The configuration xml is based on the “jboss-jmsra-ds.xml” example file from IBM, shipped with the resource adaptor.
The only things I have changed are the server-, manager-, and queue names and I have also commented-in the <xa-transaction/> element to enable XA.
When I query my JNDI for the configured connection factory (jms/ivt/IVTCF) I get an instance of the class com.ibm.mq.connector.outbound.ConnectionFactoryImpl. This class does not implement the XAConnectionFactory interface though; hence it is not a connection I can use for XA transactions.
I have attached a screen dump of my JNDI hierarchy to show that the non-XA WMQ Connection factory is deployed.
Why do I not get a real XA connection factory?
When the resource adaptor is deploying I get the error described in http://www-01.ibm.com/support/docview.wss?uid=swg1IC96105 but the non-xa Connection factory is still deployed. Could this error be the reason for why the deployed connection factory is not a XAConnectionFactory?