Hello

I need to dynamically route my messages to queues using camel based off a
header property.  I need to do this in a way where I can append the value of
that header to a high level qualifier (HLQ) and have the message routed to
that queue.  Understanding that I need to add some validation logic,  I've
figured out a way to do this, but it seems kind of messy. Can someone tell
me if there is a more direct way of accomplishing what I'm doing below?

                <route>
                        <description>Example Camel Route</description>
                        <from uri="activemq:IN.QUEUE?preserveMessageQos=true" />
                        <setHeader headerName="FINAL_DESTINATION">
                                <simple resultType="java.lang.String">
                                     activemq:queue:HLQ.${in.header.Q_NAME}
                                </simple>
                        </setHeader>
                        <recipientList delimiter=",">
                                <header>FINAL_DESTINATION</header>
                        </recipientList>
                </route>

The result I would be expecting is that the producing application sets a JMS
header property Q_NAME.  The route reads that and produces it to a queue
named HLQ.<that value>.

So if the header Q_NAME = OUTPUT.QUEUE then the message would be produced to
HLQ.OUTPUT.QUEUE

Thanks!

--
View this message in context: 
http://camel.465427.n5.nabble.com/Dynamic-queue-name-from-header-property-tp5715644.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to