【发布时间】:2016-10-17 22:42:42
【问题描述】:
我正在使用带弹簧的骆驼。 我们的其中一条路由应该将 TCP 消息发送到动态选择的端点。 由于端点只是一个字符串,我知道我可以使用
.toD("netty4://...")
但问题在于设置 ssl 参数。
Netty 组件将此定义为路由 url 参数,因此它看起来像这样:
.toD("netty4://...?sslContextParameters=mySslContextParameters");
为了完成这项工作,我有一个 bean:
@Bean
public SslContextParameters mySslContextParameters() {
...
return sslContextParameters();
}
这会将它绑定到这个单个 bean 实例,但我需要的是一个动态配置的 bean,以便我可以根据从生产者那里获得的一些数据设置 SSL 的不同参数。
当我可以调用工厂方法并将一些参数传递给它时,我想要的是这样的(我知道这不是正确的骆驼语法):
.toD("netty://...?sslContextParameters=${bean('mySslContestParameters(${exchange.param1}, ${exchange.param2}')}");
【问题讨论】:
-
您研究过 bean 绑定吗? camel.apache.org/bean.html
-
你能给我举个例子如何使用bean绑定,这样我就可以传递bean工厂方法的参数了吗?
标签: java spring apache-camel