You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2010/07/30 13:02:26 UTC

svn commit: r980734 - /tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java

Author: antelder
Date: Fri Jul 30 11:02:26 2010
New Revision: 980734

URL: http://svn.apache.org/viewvc?rev=980734&view=rev
Log:
TUSCANY-3634: ensure jms session is closed for oneway requests

Modified:
    tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java

Modified: tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java?rev=980734&r1=980733&r2=980734&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java Fri Jul 30 11:02:26 2010
@@ -120,6 +120,7 @@ public class TransportServiceInterceptor
     }
     
     public Message invokeResponse(Message msg) { 
+        JMSBindingContext context = msg.getBindingContext();
         try {
 
             //if operation is oneway, return back.
@@ -128,7 +129,6 @@ public class TransportServiceInterceptor
                 return msg;
             }
 
-            JMSBindingContext context = msg.getBindingContext();
             Session session = context.getJmsResponseSession();
             javax.jms.Message requestJMSMsg = context.getJmsMsg();
             javax.jms.Message responseJMSMsg = msg.getBody();
@@ -173,12 +173,13 @@ public class TransportServiceInterceptor
             producer.send((javax.jms.Message)msg.getBody());
     
             producer.close();
-            context.closeJmsResponseSession();
             
             return msg;
     
         } catch (JMSException e) {
             throw new JMSBindingException(e);
+        } finally {
+            context.closeJmsResponseSession();
         }
     }