Title: [721] trunk/components/base/src/test/java/org/servicemix/examples/ReceiverComponent.java: Change the ReceiverComponent so that it copies the received message (this was causing failures when the source could not be re-read)
Revision
721
Author
gnt
Date
2005-11-02 06:23:56 -0500 (Wed, 02 Nov 2005)

Log Message

Change the ReceiverComponent so that it copies the received message (this was causing failures when the source could not be re-read)

Modified Paths

Diff

Modified: trunk/components/base/src/test/java/org/servicemix/examples/ReceiverComponent.java (720 => 721)

--- trunk/components/base/src/test/java/org/servicemix/examples/ReceiverComponent.java	2005-11-02 11:21:21 UTC (rev 720)
+++ trunk/components/base/src/test/java/org/servicemix/examples/ReceiverComponent.java	2005-11-02 11:23:56 UTC (rev 721)
@@ -17,14 +17,16 @@
  **/
 package org.servicemix.examples;
 
+import org.servicemix.MessageExchangeListener;
+import org.servicemix.components.util.ComponentSupport;
+import org.servicemix.jbi.jaxp.SourceTransformer;
+import org.servicemix.jbi.jaxp.StringSource;
+
 import javax.jbi.messaging.MessageExchange;
 import javax.jbi.messaging.MessagingException;
 import javax.jbi.messaging.NormalizedMessage;
 import javax.xml.namespace.QName;
 
-import org.servicemix.MessageExchangeListener;
-import org.servicemix.components.util.ComponentSupport;
-
 /**
  * @version $Revision: 162 $
  */
@@ -46,7 +48,12 @@
         if (inMessage == null) {
             throw new MessagingException("Null in message delivered!");
         }
-        messageList.addMessage(inMessage);
+        // Copy the message, in case the source is a closeable stream 
+        NormalizedMessage copy = exchange.createMessage();
+        getMessageTransformer().transform(exchange, inMessage, copy);
+        // Add it to the list
+        messageList.addMessage(copy);
+        // Finish exchange
         done(exchange);
     }
 

Reply via email to