是否有可能以动态方式从端点更改? 例如,我想要改变
for(endpointFirst).routeId(ROUTEID).to(finishEndpoint);
到
for(endpointSecond).routeId(ROUTEID).to(finishEndpoint);
我尝试使用
camelContext.stopRoute(TestRoute.ROUTEID);
将旧端点更改为新端点
camelContext.startRoute(TestRoute.ROUTEID);
但我的努力不能正常运作。
感谢您的帮助
答案 0 :(得分:6)
你需要
这允许您将从端点更改为您想要的任何内容(例如其他内容)
某些组件/端点允许更改选项以及在运行时更新的选项。例如,JMS端点允许这样做,所以你可以
但可能有一些组件无法做到这一点。
答案 1 :(得分:1)
要更改from
端点,您可以通过上下文API动态添加/删除路由,或者像克劳斯建议的那样更改路径
更改目标端点,使用recipient list EIP和Expression根据消息头,变量,方法等动态确定端点...
from("direct:a")
.recipientList(header("foo"));