将一个varibale添加到RouteDefination"来自"在Apache骆驼

时间:2017-06-06 22:33:57

标签: apache-camel apache-camel-cdi

我希望修改Apache Camel中的RouteDefination

我有eproperties文件如下      TEST1 =测试      队列1 =队列

代码如下

from( "activemq:queue:{{test1}}.{{queue1}}")
.transform()
.simple(" ${body} {{test1}}.{{queue1}}.hello ${date:now:yyyyMMdd}")
.to("stream:out");

这将成为路线

from( "activemq:queue:test1.queue")

我希望将其作为

from( "activemq:queue:test1.queue_20170606")

是$ {date:now:yyyyMMdd}

1 个答案:

答案 0 :(得分:0)

这在Camel中是不可能的 - CAST(NVL(COL1,0) AS NUMERIC(10,6)) -- ERROR: 0 : Numeric value out of range 端点是静态的。

但是,ActiveMQ支持可用于从多个队列中使用的队列通配符,您可以使用JMS消息选择器。

后者的性能不如需要对队列进行查询。

如果你想为每个yyyyMMdd做一个路由,那么你需要在Camel中添加/删除动态路由。关于如何做到这一点,请参阅其他问题。