From 9fe702eeaf97b6de6c77e8a4aa75954516d1c4bf Mon Sep 17 00:00:00 2001 From: rfeng Date: Thu, 21 Oct 2010 20:17:45 +0000 Subject: 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 --- .../apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java | 4 +++- .../sca/binding/jms/transport/TransportReferenceInterceptor.java | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'sca-java-2.x/trunk') 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); -- cgit v1.2.3