From: <hib...@li...> - 2006-05-11 05:44:31
|
Author: epbernard Date: 2006-05-11 01:44:27 -0400 (Thu, 11 May 2006) New Revision: 9923 Modified: trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java Log: EJB-177 workaround JBossTM bug Modified: trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java =================================================================== --- trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java 2006-05-10 16:58:09 UTC (rev 9922) +++ trunk/HibernateExt/ejb/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java 2006-05-11 05:44:27 UTC (rev 9923) @@ -446,10 +446,14 @@ try { ctx = (TransactionFactory.Context) session; JoinableCMTTransaction joinable = (JoinableCMTTransaction) session.getTransaction(); + javax.transaction.Transaction transaction = joinable.getTransaction(); + if ( transaction == null ) + log.warn( "Transaction not available on beforeCompletionPhase: assuming valid" ); flush = !ctx.isFlushModeNever() && //ctx.isFlushBeforeCompletionEnabled() && //TODO probably make it ! isFlushBeforecompletion() - !JTAHelper.isRollback( joinable.getTransaction().getStatus() ); + ( transaction == null || !JTAHelper.isRollback( transaction.getStatus() ) ); + //transaction == null workaround a JBoss TMBug } catch (SystemException se) { log.error( "could not determine transaction status", se ); |