Author: antelder
Date: Tue Aug 24 16:46:34 2010
New Revision: 988619

URL: http://svn.apache.org/viewvc?rev=988619&view=rev
Log:
For callbacks with a oneway MEP set the JMSReplyTo with the callback destination

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

Modified: 
tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.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/headers/HeaderReferenceInterceptor.java?rev=988619&r1=988618&r2=988619&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.java
 Tue Aug 24 16:46:34 2010
@@ -24,7 +24,9 @@ package org.apache.tuscany.sca.binding.j
 import java.util.Map;
 
 import javax.jms.DeliveryMode;
+import javax.jms.Destination;
 import javax.jms.JMSException;
+import javax.naming.NamingException;
 
 import org.apache.tuscany.sca.assembly.WireFormat;
 import org.apache.tuscany.sca.binding.jms.JMSBinding;
@@ -114,7 +116,11 @@ public class HeaderReferenceInterceptor 
     
                 String callbackDestName = 
getCallbackDestinationName(reference);
                 if (callbackDestName != null) {
-                    
jmsMsg.setStringProperty(JMSBindingConstants.CALLBACK_Q_PROPERTY, 
callbackDestName);
+                    
jmsMsg.setStringProperty(JMSBindingConstants.CALLBACK_Q_PROPERTY, "jms:jndi:" + 
callbackDestName);
+                    if (operation.isNonBlocking()) {
+                       Destination dest = 
context.getJmsResourceFactory().lookupDestination(callbackDestName);
+                                               jmsMsg.setJMSReplyTo(dest);
+                    }
                 }
             }
             
@@ -140,7 +146,9 @@ public class HeaderReferenceInterceptor 
             return tuscanyMsg;
         } catch (JMSException e) {
             throw new JMSBindingException(e);
-        } 
+        } catch (NamingException e) {
+            throw new JMSBindingException(e);
+               } 
     }
  
     


Reply via email to