You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by dj...@apache.org on 2008/03/18 07:06:13 UTC

svn commit: r638225 - /openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/transaction/TransactionPolicy.java

Author: djencks
Date: Mon Mar 17 23:06:11 2008
New Revision: 638225

URL: http://svn.apache.org/viewvc?rev=638225&view=rev
Log:
OPENEJB-782 GERONIMO-3907 don't swallow RollbackException

Modified:
    openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/transaction/TransactionPolicy.java

Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/transaction/TransactionPolicy.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/transaction/TransactionPolicy.java?rev=638225&r1=638224&r2=638225&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/transaction/TransactionPolicy.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/transaction/TransactionPolicy.java Mon Mar 17 23:06:11 2008
@@ -31,6 +31,8 @@
 import javax.transaction.HeuristicRollbackException;
 import javax.transaction.RollbackException;
 import javax.transaction.NotSupportedException;
+import javax.ejb.EJBException;
+
 import java.rmi.RemoteException;
 
 public abstract class TransactionPolicy {
@@ -145,15 +147,18 @@
         } catch (RollbackException e) {
 
             txLogger.info("The transaction has been rolled back rather than commited: " + e.getMessage());
+            throw new EJBException(e);
 
         } catch (HeuristicMixedException e) {
 
             txLogger.info("A heuristic decision was made, some relevant updates have been committed while others have been rolled back: " + e.getMessage());
+            throw new EJBException(e);
 
         } catch (HeuristicRollbackException e) {
 
             txLogger.info("A heuristic decision was made while commiting the transaction, some relevant updates have been rolled back: " + e.getMessage());
-
+            throw new EJBException(e);
+ 
         } catch (SecurityException e) {
 
             txLogger.error("The current thread is not allowed to commit the transaction: " + e.getMessage());