It's expected. Internally we use a CaseInsensitiveMap [1]. [1] https://svn.apache.org/repos/asf/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultMessage.java
Best, Christian On Sat, Sep 22, 2012 at 6:20 PM, Marco Mistroni <[email protected]> wrote: > Hi all > i have a camel processor which sets a header before passing the message to > a <camel:route> component > > .... > exchange.getOut().setHeader("jsonHeader", action); > exchange.getOut().setHeader("jsonContent", jsonData); > ..... > > here's the context > > <camel:route id="Jetty_Sample"> > <camel:from uri="jetty:http://localhost:8888/myJettyService" > /> > <!-- camel:marshal ref="jsonFormatter" /--> > <camel:process ref="myJettyService" /> > <camel:to uri="seda:jsonRouting" /> > > </camel:route> > > <camel:route id="jettyRouting"> > <camel:from uri="seda:jsonRouting" /> > <camel:process ref="myJettyService2" /> > > <camel:choice> > <camel:when> > <camel:simple>${in.headers[jsonHeader]} == > 'shareManagement' > </camel:simple> > <camel:to uri="seda:jsonShares" /> > </camel:when> > ...... > </camel:choice> > > > I have been struggling in trying to figure out why my message wasn't being > passed to the correct route > so i decided to put a processor in the route message to print out all the > headers..... (i prob should have used a camel:log,but i m still > learning...) > > LOGGER.info("In jetty msg processor...."); > try { > > for(String head : exchange.getIn().getHeaders().keySet()) { > LOGGER.info("**" + head + "=" + > exchange.getIn().getHeader(head)); > } > > } catch (Exception e) { > > > > It turns out the original jsonHeader became jsonheader (lost the capital > 'H'), and jsonContent became jsoncontent > > is that a bug? or it is expected? > > w/kindest regards > marco > --
