我有一条简单的骆驼路线需要修改。路线如下:
from(source.uri)
.unmarshal()
.bean(TransformMessageBean.class, "SomeMethod")
.to(destination.uri)
我想在解组之后添加另一个 bean 方法调用,该集合是一个标头值,而不中断当前的数据流。有谁知道有什么方法可以做到这一点?我在 apache 的文档中读到,bean 的返回值是在出站消息正文中设置的。有没有办法将其更改为标题?
提前致谢!
当然!可用的选项之一是
.setHeader("headerName").method(beanInstance, "methodToGetHeaderValue")
使用这种方法,该方法(例如,methodToGetHeaderValue
) 在提供的 bean 实例上将返回一个值,该值将成为标头的值。
有多种选项可供选择。你可以调用它带有一个bean实例 http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/builder/ExpressionClause.html#method(java.lang.Object,%20java.lang.String), 豆类 http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/builder/ExpressionClause.html#method(java.lang.Class,%20java.lang.String)(就像你的例子),或者甚至一个豆子的名字 http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/builder/ExpressionClause.html#method(java.lang.String,%20java.lang.String),都带有或不带有方法名称。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)