Author: gnodet
Date: Fri Jun 20 01:45:16 2008
New Revision: 669822

URL: http://svn.apache.org/viewvc?rev=669822&view=rev
Log:
Fix transaction handling

Modified:
    
servicemix/components/shared-libraries/trunk/servicemix-common/src/main/java/org/apache/servicemix/common/EndpointDeliveryChannel.java

Modified: 
servicemix/components/shared-libraries/trunk/servicemix-common/src/main/java/org/apache/servicemix/common/EndpointDeliveryChannel.java
URL: 
http://svn.apache.org/viewvc/servicemix/components/shared-libraries/trunk/servicemix-common/src/main/java/org/apache/servicemix/common/EndpointDeliveryChannel.java?rev=669822&r1=669821&r2=669822&view=diff
==============================================================================
--- 
servicemix/components/shared-libraries/trunk/servicemix-common/src/main/java/org/apache/servicemix/common/EndpointDeliveryChannel.java
 (original)
+++ 
servicemix/components/shared-libraries/trunk/servicemix-common/src/main/java/org/apache/servicemix/common/EndpointDeliveryChannel.java
 Fri Jun 20 01:45:16 2008
@@ -107,15 +107,17 @@
     }
 
     private void resumeTx(MessageExchange exchange) throws MessagingException {
-        Transaction tx = (Transaction) 
exchange.getProperty(MessageExchange.JTA_TRANSACTION_PROPERTY_NAME);
-        if (tx != null) {
-            TransactionManager txmgr = (TransactionManager) 
endpoint.getServiceUnit().getComponent().getComponentContext().getTransactionManager();
-            try {
-                txmgr.resume(tx);
-            } catch (InvalidTransactionException e) {
-                throw new MessagingException(e);
-            } catch (SystemException e) {
-                throw new MessagingException(e);
+        if 
(!endpoint.getServiceUnit().getComponent().getContainer().handleTransactions()) 
{
+            Transaction tx = (Transaction) 
exchange.getProperty(MessageExchange.JTA_TRANSACTION_PROPERTY_NAME);
+            if (tx != null) {
+                TransactionManager txmgr = (TransactionManager) 
endpoint.getServiceUnit().getComponent().getComponentContext().getTransactionManager();
+                try {
+                    txmgr.resume(tx);
+                } catch (InvalidTransactionException e) {
+                    throw new MessagingException(e);
+                } catch (SystemException e) {
+                    throw new MessagingException(e);
+                }
             }
         }
     }


Reply via email to