Camel setBody使用Spring配置

时间:2015-02-15 14:04:25

标签: spring apache-camel


我使用:

构建了Java Camel Timer-JMS路由
context.addRoutes(new RouteBuilder() {
   public void configure() {
    from("timer:foo?period=1s").setBody(body().
       append("Message at ${date:now:yyyy-MM-dd HH:mm:ss}")).to("jms:queue:activemq/queue/TestQueue");
   }
});

现在我需要把它变成Spring。

<camel:route>
    <camel:from uri="timer:foo?period=1s" />
    <camel:to uri="jms:queue:activemq/queue/TestQueue" />
</camel:route>

我错过了表达式的Spring XML配置中的等价物:

setBody(body().append("Message at ${date:now:yyyy-MM-dd HH:mm:ss}")

1 个答案:

答案 0 :(得分:8)

在Spring中,您可以使用简单的语言来构建此类消息。实际上你也可以用Java做到这一点,它也一样。

<setBody>
  <simple>${body}Message at ${date:now:yyyy-MM-dd HH:mm:ss}</simple>
</setBody>

请注意,计时器发送一个空/空体。所以你可能会在邮件中看到“null”。

关于简单,请参阅:http://camel.apache.org/simple