Zainab Madawala
2013-03-05 10:02:24 UTC
Zainab Madawala [https://community.jboss.org/people/zainab.madawala] created the discussion
"JBOSS EAP6.0.1 with IBM MQ problem"
To view the discussion, visit: https://community.jboss.org/message/800756#800756
--------------------------------------------------------------
Hello,
Â
We are trying to integrate JBOSS EAP6.0.1 with IBM MQ. We have an application working on Websphere 7 with IBM MQ for JMS.
Â
We are in process of migration to JBOSS EAP6.0.1.
Â
With regards to setup and information available on various JBOSS forums, we managed to perform a few setup for the Queue Connection factories and Queues.
Â
With JBOSS EAP6.0.1, We have copied the "wmq.jmsra.rar" from the IBM MQ to JBOSS Standlalone deployment folder.
We modified the standalone-full.xml to include the resource-adapter pertaining to IBM MQ.
Â
Snippet of configuration from standalone-full.xml:
Â
<subsystem xmlns="urn:jboss:domain:resource-adapters:1.0">
<resource-adapters>
<resource-adapter>
<archive>
wmq.jmsra.rar
</archive>
<transaction-support>NoTransaction</transaction-support>
<connection-definitions>
<connection-definition class-name="com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl" jndi-name="java:jboss/jms/myQCF" pool-name="jms/myQCF">
<config-property name="hostName">
XXXXXX (Server Name)
</config-property>
<config-property name="channel">
YYYYYY (Channel Name)
</config-property>
<config-property name="transportType">
CLIENT
</config-property>
<config-property name="queueManager">
ZZZZZ (Queue Manager Name)
</config-property>
</connection-definition>
</connection-definitions>
<admin-objects>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/jms/myOutPostQueue" pool-name="OUT_POST">
<config-property name="baseQueueName">
OUT_POST
</config-property>
</admin-object>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/jms/myOutAckQueue" pool-name="OUTPUT_REPLY_QUEUE">
<config-property name="baseQueueName">
OUTPUT_REPLY_QUEUE
</config-property>
</admin-object>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/jms/myOutRespQueue" pool-name="OUTPUT_PDF_RESP">
<config-property name="baseQueueName">
IVN_ADV_QUEUE
</config-property>
</admin-object>
</admin-objects>
</resource-adapter>
</resource-adapters>
</subsystem>
Â
The connection-definition class-name are as per the ra.xml available under wmq.jmsra.rar\META-INF.
Â
With the above setup We are able to see the JNDI created for the Queues and Queue Connection factory.
Â
We have used Spring based JMS setup (JMSTemplate102) for getting the QCF and sending message.
Â
However, at the time of calling send method on jmsTemplate102, we get below error:
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Caused by: javax.resource.ResourceException: IJ000658: Unexpected throwable while trying to create a connection: null
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:378)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:397)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:365)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:302)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ConnectionFactoryImpl.createManagedJMSConnection(ConnectionFactoryImpl.java:189)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â ... 135 more
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Caused by: com.ibm.mq.connector.DetailedResourceException: MQJCA1012: Failed to create a JMS connection factory., error code: MQJCA1012 A JCA ManagedConnectionFactory object was not able to create a WebSphere MQ classes for JMS ConnectionFactory object. Check the properties of the ConnectionFactory object.
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:124)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:100)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createConnection(ManagedQueueConnectionFactoryImpl.java:161)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedConnectionImpl.<init>(ManagedConnectionImpl.java:131)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionImpl.<init>(ManagedQueueConnectionImpl.java:66)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createManagedConnection(ManagedQueueConnectionFactoryImpl.java:138)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:775)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:345)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â ... 141 more
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Caused by: javax.jms.JMSException: com.ibm.msg.client.jms.internal.JmsFactoryFactoryImpl cannot be cast to com.ibm.msg.client.jms.JmsFactoryFactory
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.msg.client.jms.JmsFactoryFactory.getInstance(JmsFactoryFactory.java:199)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.ConnectionFactoryBuilder.constructJmsConnectionFactory(ConnectionFactoryBuilder.java:230)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.ConnectionFactoryBuilder.createConnectionFactory(ConnectionFactoryBuilder.java:124)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl.createConnectionFactory(ManagedConnectionFactoryImpl.java:431)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createConnection(ManagedQueueConnectionFactoryImpl.java:157)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â ... 146 more
Â
Â
Â
Any help would be appreciated.
Also, if someone have configured IBM MQ with EAP6.0.1 (Without MDBs), pls guide us.
Â
Thanks.
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/800756#800756]
Start a new discussion in JBoss Messaging at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2042]
"JBOSS EAP6.0.1 with IBM MQ problem"
To view the discussion, visit: https://community.jboss.org/message/800756#800756
--------------------------------------------------------------
Hello,
Â
We are trying to integrate JBOSS EAP6.0.1 with IBM MQ. We have an application working on Websphere 7 with IBM MQ for JMS.
Â
We are in process of migration to JBOSS EAP6.0.1.
Â
With regards to setup and information available on various JBOSS forums, we managed to perform a few setup for the Queue Connection factories and Queues.
Â
With JBOSS EAP6.0.1, We have copied the "wmq.jmsra.rar" from the IBM MQ to JBOSS Standlalone deployment folder.
We modified the standalone-full.xml to include the resource-adapter pertaining to IBM MQ.
Â
Snippet of configuration from standalone-full.xml:
Â
<subsystem xmlns="urn:jboss:domain:resource-adapters:1.0">
<resource-adapters>
<resource-adapter>
<archive>
wmq.jmsra.rar
</archive>
<transaction-support>NoTransaction</transaction-support>
<connection-definitions>
<connection-definition class-name="com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl" jndi-name="java:jboss/jms/myQCF" pool-name="jms/myQCF">
<config-property name="hostName">
XXXXXX (Server Name)
</config-property>
<config-property name="channel">
YYYYYY (Channel Name)
</config-property>
<config-property name="transportType">
CLIENT
</config-property>
<config-property name="queueManager">
ZZZZZ (Queue Manager Name)
</config-property>
</connection-definition>
</connection-definitions>
<admin-objects>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/jms/myOutPostQueue" pool-name="OUT_POST">
<config-property name="baseQueueName">
OUT_POST
</config-property>
</admin-object>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/jms/myOutAckQueue" pool-name="OUTPUT_REPLY_QUEUE">
<config-property name="baseQueueName">
OUTPUT_REPLY_QUEUE
</config-property>
</admin-object>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/jms/myOutRespQueue" pool-name="OUTPUT_PDF_RESP">
<config-property name="baseQueueName">
IVN_ADV_QUEUE
</config-property>
</admin-object>
</admin-objects>
</resource-adapter>
</resource-adapters>
</subsystem>
Â
The connection-definition class-name are as per the ra.xml available under wmq.jmsra.rar\META-INF.
Â
With the above setup We are able to see the JNDI created for the Queues and Queue Connection factory.
Â
We have used Spring based JMS setup (JMSTemplate102) for getting the QCF and sending message.
Â
However, at the time of calling send method on jmsTemplate102, we get below error:
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Caused by: javax.resource.ResourceException: IJ000658: Unexpected throwable while trying to create a connection: null
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:378)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:397)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:365)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:302)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ConnectionFactoryImpl.createManagedJMSConnection(ConnectionFactoryImpl.java:189)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â ... 135 more
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Caused by: com.ibm.mq.connector.DetailedResourceException: MQJCA1012: Failed to create a JMS connection factory., error code: MQJCA1012 A JCA ManagedConnectionFactory object was not able to create a WebSphere MQ classes for JMS ConnectionFactory object. Check the properties of the ConnectionFactory object.
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:124)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:100)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createConnection(ManagedQueueConnectionFactoryImpl.java:161)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedConnectionImpl.<init>(ManagedConnectionImpl.java:131)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionImpl.<init>(ManagedQueueConnectionImpl.java:66)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createManagedConnection(ManagedQueueConnectionFactoryImpl.java:138)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:775)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:345)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â ... 141 more
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Caused by: javax.jms.JMSException: com.ibm.msg.client.jms.internal.JmsFactoryFactoryImpl cannot be cast to com.ibm.msg.client.jms.JmsFactoryFactory
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.msg.client.jms.JmsFactoryFactory.getInstance(JmsFactoryFactory.java:199)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.ConnectionFactoryBuilder.constructJmsConnectionFactory(ConnectionFactoryBuilder.java:230)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.ConnectionFactoryBuilder.createConnectionFactory(ConnectionFactoryBuilder.java:124)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl.createConnectionFactory(ManagedConnectionFactoryImpl.java:431)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createConnection(ManagedQueueConnectionFactoryImpl.java:157)
Â
17:15:22,852 ERROR [stderr] (http-localhost/127.0.0.1:8080-5) Â Â Â Â Â ... 146 more
Â
Â
Â
Any help would be appreciated.
Also, if someone have configured IBM MQ with EAP6.0.1 (Without MDBs), pls guide us.
Â
Thanks.
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/800756#800756]
Start a new discussion in JBoss Messaging at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2042]