[jboss-user] [JBoss Seam] - SeamPhaseListener should check for rolledBack exceptions bef

matt.drees do-not-reply at jboss.com
Wed Jul 18 14:22:24 EDT 2007


I'm running jboss embedded on tomcat.
For some reason every once in a while (I haven't figured out the circumstances yet), I get some strange transaction problems.

SeamPhaseListener (line 560) checks to make sure Transaction.instance() isn't STATUS_ACTIVE or STATUS_MARKED_ROLLBACK, but it doesn't check to make sure it's not STATUS_ROLLEDBACK.  When my app has this goofy problem, Transaction.instance() returns such a transaction.  When SeamPhaseListener tries to begin() it, I get a TransactionNotSupported exception, and a redirect to the debug page.  But the debug page runs the seam phase listener, which again gets a rolledback transaction, and throws another exception.  So I get in an infinite loop.

So...

1.  Does anybody have any idea why Transaction.instance() (under the hood implemented by Naming.getInitialContext().lookup("UserTransaction"); ) would return a rolledback transaction?

2. Can Seam make sure the transaction isn't rolledback before beginning, and therefore prevent the infinite loop I'm experiencing?

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4065519#4065519

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4065519



More information about the jboss-user mailing list