【问题标题】:Use options set on apache camel direct endpoint使用在 apache camel 直接端点上设置的选项
【发布时间】:2013-01-11 04:46:07
【问题描述】:

我正在构建一个路由单 bean,并且希望在动态路由之外还向收件人列表的端点发送一个参数。

我希望使用“direct:test?param=value”之类的东西,其中 param 和 value 在路由单 POJO 中设置

根据我对直接组件的了解,单个“direct:test”端点将接收所有路由交换,但是我需要一种方法来读取从路由单发送的参数

如何将此参数用于接收交换的端点?它是交易所的财产吗?

【问题讨论】:

  • 经过一些测试后,在诸如“direct:test?para=value”之类的直接端点上设置参数似乎不起作用,因为直接不知道如何处理这些参数,据我了解需要自定义端点。

标签: apache apache-camel


【解决方案1】:

潘,

我会使用骆驼的header 功能。它非常通用,您可以使用 predicates 处理它以获得一些不错的 DSL 或弹簧控制,或者在 bean/processor 中通过执行 myExchange.getIn().getHeader("foo") 来处理它。

【讨论】:

  • 感谢您的回复。我需要根据传入的消息变量将传入的 XML 消息多播到各种路由。我希望通过使用路由单来“减少”一些实际使用标头和谓词来参数化复制的多播交换的路由。但是,如果我不能将参数传递给路由单的目标端点,这是不可能的。
猜你喜欢
  • 2012-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-14
  • 1970-01-01
相关资源
最近更新 更多