We are having a situation where we are getting random "javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted]" failures.
The situation occurs randomly, but when it does occur, we are always doing multiple JMS publishes within 1 XA transaction.
For each message we do this:
1) Get the connection factory "java:JmsXA"
2) Create a connection from the factory
3) Create a non-transacted JMS session
4) Create a queue sender
5) Create an ObjectMessage
6) Set the Serializable into the ObjectMessage
7) Send the ObjectMessage with the sender
8) Close the sender / session / queue connection
Does anyone see a problem with this?
Thanks in advance.
I just wanted to update everyone on this one.
We found that the issue was related to persisting the JMS messages into an Oracle database. In order to find this issue you need to turn up the "org.jboss" logging level to DEBUG or TRACE and the error is then displayed.