简单的骆驼变换

Simple Camel Transformation

我刚刚 运行 我的第一条 Camel 路线(从计时器到 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");
                }
            });

但是我刚刚意识到收到了以下 JMS 消息:

nullMessage at ${date:now:yyyy-MM-dd HH:mm:ss}

是否缺少启用变量替换以便我在消息中获得真实日期的内容?
谢谢

定时器有一个 null 主体,所以 body().append() 会做一个 null + 任何事情。

所以不要追加,只需设置正文。如果要计算时间戳,请使用简单的语言。

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