Camel – 将特定参数从路由传递到genericsbean方法
假设我有一条看起来像这样的Camel路线:
from("direct:myRoute") .setHeader("someHeader", simple("some header value")) .beanRef("myBean", "beanMethod");
我有一个我cannot change
的bean,看起来像这样:
public class MyBean { public void beanMethod(String headerExpected) { // do something with the value here. } }
基本上,我想将myRoute中someHeader的值传递给MyBean中的 beanMethod 。
知道beanMethod可以接受一个String
,我如何从路由中传递标题someHeader的值,以便在beanMethod中接受它作为String?
您可以按照您描述的方式传递参数,如下所示:
from("direct:myRoute") .setHeader("someHeader", simple("some header value")) .to("bean:myBean?method=beanMethod(${header.someHeader})")
更多信息,包括其他bean绑定方法,可以在http://camel.apache.org/bean-binding.html找到
- 引起:java.net.SocketException:来自服务器的文件意外结束
- org.apache.camel.NoTypeConversionAvailableException:没有类型转换器可用于转换类型:
- 记录骆驼路线
- Exchange.getIn()。getBody()在第二次调用时返回camel中的空字符串
- Camel + Jackson:为所有反序列化注册一个模块
- 如何让Camel FTP只按需获取一次
- Apache Camel ftp使用者一次又一次地加载相同的文件
- Apache Camel http到http路由(有可能吗?)
- 使用ActiveMQ,Camel和Spring实现Request-Reply模式