diff options
author | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2010-10-21 20:17:45 +0000 |
---|---|---|
committer | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2010-10-21 20:17:45 +0000 |
commit | 9fe702eeaf97b6de6c77e8a4aa75954516d1c4bf (patch) | |
tree | 277d971f1ee4c5bbafe59ae8b6b8dd4a2db38e32 /sca-java-2.x/trunk/modules/binding-jms-runtime | |
parent | f1cfee1a017758d7fccd80b5e9cfc3a12906e73b (diff) |
Set JMSReplyTo based on the latest binding.jms spec
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1026126 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/modules/binding-jms-runtime')
2 files changed, 5 insertions, 2 deletions
diff --git a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java index defd8f222a..098bdde3ae 100644 --- a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java +++ b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java @@ -252,7 +252,9 @@ public class RRBJMSBindingInvoker implements Invoker { protected Destination getReplyToDestination(Session session) throws JMSException, JMSBindingException, NamingException { Destination replyToDest; - if (operation.isNonBlocking()) { + // [rfeng] If the oneway operation is part of bi-directional interface, the JMSReplyTo should be set + if (operation.isNonBlocking() && endpointReference.getComponentReferenceInterfaceContract() + .getCallbackInterface() == null) { replyToDest = null; } else { if (bindingReplyDest != null) { diff --git a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java index cafcd12cf2..3ed8021107 100644 --- a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java +++ b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java @@ -59,7 +59,8 @@ public class TransportReferenceInterceptor implements Interceptor { // get the jms context JMSBindingContext context = msg.getBindingContext(); - if (context.getReplyToDestination() == null) { + // [rfeng] For oneway operation as part of the bi-directional interface, the JMSReplyTo is present + if (context.getReplyToDestination() == null || msg.getOperation().isNonBlocking()) { responseMsg.setBody(null); } else { responseMsg = invokeResponse(msg); |