You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by js...@apache.org on 2007/12/05 10:40:00 UTC

svn commit: r601275 - /activemq/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java

Author: jstrachan
Date: Wed Dec  5 01:40:00 2007
New Revision: 601275

URL: http://svn.apache.org/viewvc?rev=601275&view=rev
Log:
applied patch for https://issues.apache.org/activemq/browse/CAMEL-184 from Axel Hohaus with thanks!

Modified:
    activemq/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java

Modified: activemq/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java?rev=601275&r1=601274&r2=601275&view=diff
==============================================================================
--- activemq/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java (original)
+++ activemq/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java Wed Dec  5 01:40:00 2007
@@ -73,6 +73,10 @@
                 in.setHeader("JMSCorrelationID", correlationId);
             }
 
+            // lets register the future object before we try send just in case
+            long requestTimeout = endpoint.getRequestTimeout();
+            FutureTask future = requestor.getReceiveFuture(correlationId, requestTimeout);
+
             getInOutTemplate().send(endpoint.getDestination(), new MessageCreator() {
                 public Message createMessage(Session session) throws JMSException {
                     Message message = endpoint.getBinding().makeJmsMessage(exchange, in, session);
@@ -86,9 +90,6 @@
             });
 
             // lets wait and return the response
-            long requestTimeout = endpoint.getRequestTimeout();
-            FutureTask future = requestor.getReceiveFuture(correlationId, requestTimeout);
-
             try {
                 Message message;
                 if (requestTimeout < 0) {