You say the following:
5. The UserTransaction.commit() call never returns.
Is this just a statement about the deadlock situation you are seeing, or does that commit call, in fact, never return. (i.e. Are there cases where you make it successfully through the commit?)
[Message sent by forum member 'tware' (tware)]
http://forums.java.net/jive/thread.jspa?messageID=244164