Hi All, we are in a process of creating some adaptors and on deployment to JBoss, following issues were encountered.
1. Any MDB is binding to a Queue that is of the same name as the MDB (for example an mdb named C will be bound to a Queue named C by default) despite specifying some other Queue name in the jboss.xml
2. While posting a sample message, jboss gave a message saying transaction commit or rollback should not be done through the code.
3. After the above change, on posting a request, it reached the downstream system and also sent the Ack back to our WorkFlow. But when the onMessage() method was ending, it did not remove the message from the Queue, as it is unable to commit, so the message was back in the queue and it started retrying giving the following exception,
19:18:20,430 ERROR [StdServerSession] failed to commit/rollback javax.transaction.HeuristicMixedException at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate TransactionImple.java:1390) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87) at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:351) at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:891) at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:170) at org.jboss.mq.SpySession.run(SpySession.java:323) at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:194) at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:743) at java.lang.Thread.run(Thread.java:595)