Hi, I think you cannot use the constant of Exchange.FILE_NAME directly in the Spring DSL. You should use the String directly like this <camel:setHeader headerName="CamelFileName"/> <camel:constant>request-${date:now:yyyy-MM-dd-HHmmssSSS}</camel:constant>
-- Willem Jiang Red Hat, Inc. FuseSource is now part of Red Hat Web: http://www.fusesource.com | http://www.redhat.com Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English) http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese) Twitter: willemjiang Weibo: 姜宁willem On Wednesday, May 15, 2013 at 10:40 AM, Gary Liu wrote: > Hello, > > I am trying to translate the following Java DSL (This is the example from > 2.10.4). The Java DSL works fine. But I after I translate to Spring DSL, > several things are not working as expected. Would someone please help? > ================================Java DSL======================= > from("cxf:bean:reportIncident") > .convertBodyTo(InputReportIncident.class) > .setHeader(Exchange.FILE_NAME, > constant("request-${date:now:yyyy-MM-dd-HHmmssSSS}")) > .wireTap("file://target/inbox/") > .choice().when(simple("${body.givenName} == 'Claus'")) > .transform(constant(ok)) > .otherwise() > .bean(new ReportIncidentImpl(), "doReportIncident") > .transform(constant(accepted) > > ); > > ===========================SPRING DSL=================== > <camel:camelContext id="camel"> > > > <camel:route> > <camel:from uri="cxf:bean:reportIncident" /> > <camel:convertBodyTo > type="org.apache.camel.example.reportincident.InputReportIncident" /> > <camel:setHeader headerName="${Exchange.FILE_NAME}"> > > <camel:constant>request-${date:now:yyyy-MM-dd-HHmmssSSS}</camel:constant> > </camel:setHeader> > <camel:wireTap uri="file://target/inbox/"></camel:wireTap> > <camel:choice> > <camel:when> > <camel:simple>${body.givenName} == 'Claus'</camel:simple> > <camel:transform> > <camel:constant>"OK"</camel:constant> > </camel:transform> > </camel:when> > <camel:otherwise> > <camel:transform> > <camel:constant>"Accepted"</camel:constant> > </camel:transform> > </camel:otherwise> > </camel:choice> > </camel:route> > </camel:camelContext> > =========================================================== > > Here are the things I did not translate propertly: > > .choice().when(simple("${body.givenName} == 'Claus'")) > .transform(constant(ok)) > > NOT THE SAME AS: > <camel:choice> > <camel:when> > <camel:simple>${body.givenName} == 'Claus'</camel:simple> > <camel:transform> > <camel:constant>"OK"</camel:constant> > </camel:transform> > </camel:when> > > > .setHeader(Exchange.FILE_NAME, > constant("request-${date:now:yyyy-MM-dd-HHmmssSSS}")) > > NOT THE SAME AS: > > <camel:setHeader headerName="${Exchange.FILE_NAME}"> > <camel:constant>request-${date:now:yyyy-MM-dd-HHmmssSSS} > > Thanks, > --Gary > > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/Problem-from-Java-DSL-to-Spring-DSL-tp5732558.html > Sent from the Camel - Users mailing list archive at Nabble.com > (http://Nabble.com).