On 8/10/07, DominicTulley <[EMAIL PROTECTED]> wrote:
>
> I'm new to Camel so please forgive me if this is a naive question, but it
> looks to me like my jms message headers are not being maintained when the
> message is forwarded from one queue to another.
> In particular, I'm trying to use the JSMReplyTo mechanism (with a temporary
> queue) but the header vanishes as the message passes through Camel.
>
> I've got Camel running inside ActiveMQ 4.1.1 with some hard coded
> destinations:
>     <destinations>
>       <queue physicalName="RegQueue" />
>       <queue physicalName="Out1Queue" />
>     </destinations>
>
> and a simple routing rule:
>
>   <camelContext id="camel"
> xmlns="http://activemq.apache.org/camel/schema/spring";
> packages="org.foo.bar">
>     <route>
>       <from uri="activemq:RegQueue"/>
>       <to uri="activemq:Out1Queue"/>
>     </route>
>   </camelContext>
>
> Any help would be appreciated.

Great catch Dominic!

It turns out we were copying across all the JMS properties; but not
copying the 3 custom JMS properties "JMSCorrelationID", "JMSReplyTo"
and "JMSType". We also were not exposing the other JMS* properties to
consumers of the message either (other than via the actual JMS message
on the JmsExchange/JmsMessage classes).

I raised a JIRA to track this issue...
https://issues.apache.org/activemq/browse/CAMEL-96

I've just patched trunk to fix this; there's a test case in which I
managed to reproduce your issue here...
https://svn.apache.org/repos/asf/activemq/camel/trunk/components/camel-activemq/src/test/java/org/apache/camel/component/activemq/ActiveMQJmsHeaderRouteTest.java

which shows this is now working. Thanks for spotting this!

-- 
James
-------
http://macstrac.blogspot.com/

Reply via email to