Environment: Fuse MQ 5.3, JBoss 5.1GA, Oracle 10g
In my test, in a EJB 2.1 stateless session bean context(transaction="Required"), a db update operation and queue message sending operation must be finished in one transaction, but I find it seems that the XA transaction control of Fuse MQ seems doesn't work, the message will send to queue even the db update is failed.In this case, I create the JMS connection and call the start() method in the ejbCreate().
But the strange thing is if I create the JMS connection and call the start() method in each request, the XA is OK.
Why this happen? I am so confused about it.
Without a test case, it is hard to figure out what was happening. There are a few of links from ActiveMQ in relation to XA transaction and intergration with JBoss that might help: