Sandeep,

If you are setting the property values to the NormalizedMessage header value, they should be transfered together with the message inside Camel. However, properties set at the MessageExchange level aren't forwared. Are you sure you are setting the properties at the NormalizedMessage level (like exchange.getMessage("in").setProperty("myprop", "myvalue") in your bean SU) -- if not, the message properties are already lost before you put the message in the queue?

Also, are you using the new JMS endpoints (<jms:consumer/> and <jms:provider/>) or the older one (<jms:endpoint/>)? The DefaultProviderMarshaler currently doesn't support forwarding JBI properties as MS properties. You would have to build you own class that extends org.apache.servicemix.jms.endpoints.DefaultProviderMarshaler but also copies JBI message properties to the JMS TextMessage in the createMessage method. Afterwards, configure this class in Spring and assign an instance of it to the "marshaler" property.

Regards,

Gert

sandeep reddy wrote:
I have servicemix-camel 3.2.2 snapshot in my ServiceMix 3.2.1 instance.

   Flow :

      Http-SU(provider) --> Bean-SU(setting properties in message header)
--> camel-SU --> JMS-Provider-SU --> JMSConsumer-SU

       I am setting some properties during Bean-SU and that message goes to
JMSProvider-SU.
       Then that message is kept into Queue(MessageQueue). But observed that
properties kept during Bean-SU were
       stripped out.(observed using JCONSOLE).

       So, for this i came to know to use marshalers.But, i don't know much
about it.
       Can anybody help me out? how i can solve it.

Sandeep.

Reply via email to