Thanks Willem.

The documentation says the URI should look like:

rabbitmq://hostname[:port]/exchangeName?[options]

So I do have the exchange name in the URI in my example.

See http://camel.apache.org/rabbitmq.html

Sent from phone

On 21 Sep 2016 1:49 a.m., "Willem Jiang" <willem.ji...@gmail.com> wrote:

> You should add the exchangeName parameter to the rabbitmq uri if you don’t
> want to specify the message header there.
>
> --
> Willem Jiang
>
>
> Blog: http://willemjiang.blogspot.com (English)
> http://jnn.iteye.com (Chinese)
> Twitter: willemjiang
> Weibo: 姜宁willem
>
>
>
> On September 21, 2016 at 5:14:54 AM, Emre Kartoglu Ismail (
> ismailemrekarto...@gmail.com) wrote:
> > Hello Camel users,
> >
> > I have a question regarding the camel-rabbitmq component. The following
> > code sends the message “test” to exchange “A” with routing key “B” every
> > 5 seconds:
> >
> >
> > from("timer:test?period=5000").process(new Processor() {
> > @Override
> > public void process(Exchange exchange) throws Exception {
> > exchange.getOut().setBody("test", String.class);
> > exchange.getOut().getHeaders().put("rabbitmq.EXCHANGE_NAME", "A”); **
> > exchange.getOut().getHeaders().put("rabbitmq.ROUTING_KEY", "B”); **
> > }
> > })
> > .to("rabbitmq://localhost/A?username=guest&password=guest&
> routingKey=B&threadPoolSize=1&autoAck=false");
> >
> >
> >
> > However when I comment out the lines with **, the message does not get
> > sent. Is this an expected behaviour? I found this stack overflow post,
> > essentially discussing the same issue:
> > http://stackoverflow.com/questions/22449086/apache-
> camel-rabbitmq-endpoint-not-creating
> > .
> >
> > There is a paragraph at http://camel.apache.org/rabbitmq.html that says
> >
> > "Headers are set by the consumer once the message is received. The
> > producer will also set the headers for downstream processors once the
> > exchange has taken place. Any headers set prior to production that the
> > producer sets will be overridden.”
> >
> > The last sentence seems to suggest that the behaviour I described here
> > is expected. My question then is would it not make more sense if we did
> > not have to specifically set the headers in the out message?
> >
> >
> > Kind regards,
> > Ismail
> >
>
>

Reply via email to