You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by jb...@apache.org on 2010/03/17 20:36:30 UTC

svn commit: r924433 - /incubator/aries/trunk/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java

Author: jbohn
Date: Wed Mar 17 19:36:30 2010
New Revision: 924433

URL: http://svn.apache.org/viewvc?rev=924433&view=rev
Log:
ARIES-258 fix to allow transaction rollback for RuntimeException in declarative transaction - patch by Brain DePradine

Modified:
    incubator/aries/trunk/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java

Modified: incubator/aries/trunk/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java?rev=924433&r1=924432&r2=924433&view=diff
==============================================================================
--- incubator/aries/trunk/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java (original)
+++ incubator/aries/trunk/transaction/transaction-blueprint/src/main/java/org/apache/aries/transaction/TxInterceptorImpl.java Wed Mar 17 19:36:30 2010
@@ -54,11 +54,13 @@ public class TxInterceptorImpl implement
                  Class<?> exceptionClass = ex.getClass();
                  boolean isAppException = false;
 
-                 for (Class<?> cls : m.getExceptionTypes()) {
-                     isAppException = cls.isAssignableFrom(exceptionClass);
-                     
-                     if (isAppException)
-                         break;
+                 if (!RuntimeException.class.isAssignableFrom(exceptionClass)) {
+                     for (Class<?> cls : m.getExceptionTypes()) {
+                         isAppException = cls.isAssignableFrom(exceptionClass);
+
+                         if (isAppException)
+                             break;
+                     }
                  }
 
                  if (!isAppException)