我对Camel很新,我正在尝试构建一个读取文件的Camel路由。该文件的一个字段是日期,该日期将用于通过JSON请求调用服务。
已加密呼叫的示例:
.inOut("cxfrs:https://myserver.edu/dostuff/20180115/deals");
我认为我可以将日期存储在交易所的属性中,如下所示:
.setProperty("dynamicDate", simple("${body.myDate}"))
我正在努力使用该属性来构建地址。 用JSON对象中的值替换带有编码的日期的更好方法是什么?
答案 0 :(得分:2)
您应该可以使用(注意D
之后的to
)
.toD("cxfrs:https://myserver.edu/dostuff/${exchangeProperty.dynamicDate}/deals");
或
.toD("cxfrs:https://myserver.edu/dostuff/${body.myDate}/deals");
有关Camel动态端点的信息,请参阅http://camel.apache.org/message-endpoint.html。
答案 1 :(得分:0)
我最终使用了recipList和"简单"语言,强制交换模式后InOut(我需要处理网络服务器响应)
.setExchangePattern(ExchangePattern.InOut)
.recipientList( simple("cxfrs://${header.myComputedAddress}"))