Dynamic 动态更改端点驼峰

Dynamic 动态更改端点驼峰,dynamic,apache-camel,endpoint,Dynamic,Apache Camel,Endpoint,是否可以从端点以动态方式进行更改? 例如,我想要零钱 for(endpointFirst).routeId(ROUTEID).to(finishEndpoint); 到 我试着用 camelContext.stopRoute(TestRoute.ROUTEID); 将旧端点更改为新端点 camelContext.startRoute(TestRoute.ROUTEID); 但我的努力并没有奏效 感谢所有帮助更改来自端点的,您可以通过上下文API动态添加/删除路由,或者按照克劳斯的建议更改路

是否可以从端点以动态方式进行更改? 例如,我想要零钱

for(endpointFirst).routeId(ROUTEID).to(finishEndpoint);

我试着用

camelContext.stopRoute(TestRoute.ROUTEID);
将旧端点更改为新端点

camelContext.startRoute(TestRoute.ROUTEID);
但我的努力并没有奏效


感谢所有帮助

更改来自端点的
,您可以通过上下文API动态添加/删除路由,或者按照克劳斯的建议更改路由

要更改目标端点,请使用EIP和表达式根据消息头、变量、方法等动态确定端点

from("direct:a")
     .recipientList(header("foo"));
你需要

  • 停下来
  • 移除路线
  • 更改端点
  • 添加路线
  • 开始路线
  • 这允许您将“从端点”更改为所需的任何内容(例如其他内容)

    某些组件/端点确实允许更改选项,并允许在运行时更新这些选项。例如,JMS端点允许这样做,因此您可以

  • 停下来
  • 更改jms端点上的选项
  • 开始路线

  • 但可能有一些组件无法做到这一点。

    我知道pattern recipientList,但我想更改第一个端点-from,以防我无法使用recipientList。请指出我可以在哪里找到这方面的示例?谢谢
    from("direct:a")
         .recipientList(header("foo"));