[jboss-user] [JBoss Messaging] New message: "JMS Bridge and JMS Provider Resource Adapter (JCA)"

Bertrand GILLIS do-not-reply at jboss.com
Tue Mar 9 11:20:09 EST 2010

User development,

A new message was posted in the thread "JMS Bridge and JMS Provider Resource Adapter (JCA)":


Author  : Bertrand GILLIS
Profile : http://community.jboss.org/people/bgillis

Hi folks !
I'm trying to setup a JMS bridge beween JBoss Messaging running inside JBoss 5.1.0 and WebSphere MQ 6.0.2 (WMQ) running as a standalone application.
Our major requirement is to have a Quality of Service (QoS) QOS_ONCE_AND_ONLY_ONCE between both JMS Providers.
This QoS requires that both connection factories must be XAConnectionFactory implementations.
The recommended way to integrate a JMS Provider inside a J2EE server is always to use the available JMS Resource Adapter.
So for WMQ, we must deploy wmq.jmsra.rar in JBoss AS as explained on this wiki page: http://community.jboss.org/docs/DOC-12535. And the JMS Bridge is working flawlessly when using QoS QOS_AT_MOST_ONCE and QOS_DUPLICATES_OK. But as soon as we use QoS QOS_ONCE_AND_ONLY_ONCE, the JMS Bridge doesn't start anymore and the following Exception is thrown.
17:15:38,302 WARN  [Bridge] jboss.messaging:name=JMSBridge,service=Bridge Failed to set up connections
java.lang.IllegalArgumentException: Connection factory must be XAConnectionFactory
        at org.jboss.jms.server.bridge.Bridge.createConnection(Bridge.java:880)
        at org.jboss.jms.server.bridge.Bridge.setupJMSObjects(Bridge.java:1015)
        at org.jboss.jms.server.bridge.Bridge.setupJMSObjectsWithRetry(Bridge.java:1223)
        at org.jboss.jms.server.bridge.Bridge.access$1600(Bridge.java:68)
        at org.jboss.jms.server.bridge.Bridge$FailureHandler.run(Bridge.java:1569)
        at java.lang.Thread.run(Thread.java:619)
As a matter of fact, all JMS Resource Adaptors implement the ConnectionFactory interface only as described in the J2EE Connector Architecture
Specification (JSR112). That's the case for IBM WMQ Resource Adaptor, Apache Active MQ Resource Adaptor and JBoss Messaging Resource Adaptor as well.  
So how is it possible to use the QoS QOS_ONCE_AND_ONLY_ONCE in a JMS Bridge if it is not possible to obtain a XAConnectionFactory from a JMS Resource Adaptor ?
Do we have to connect directly to the JMS Provider to obtain a XAConnectionFactory instead of using the JMS Provider resource Adaptor available ? If so, could you describe the procedure to follow ?
Thank you very much for your assistance.


To reply to this message visit the message page: http://community.jboss.org/message/530819#530819

More information about the jboss-user mailing list