【发布时间】:2016-10-16 19:43:25
【问题描述】:
我有一条骆驼路线,它处理来自process queue 的消息并将其发送到upload queue。
from("activemq:queue:process" ).routeId("activemq_processqueue")
.process(exchange -> {
SomeImpl impl = new SomeImpl();
impl.process(exchange);
})
.to(ExchangePattern.InOnly, "activemq:queue:upload");
在impl.process 中,我正在填充Id 和destination server path。现在我需要定义一个使用上传队列中的消息的新路由,并复制一个本地文件夹(基于先前路由中生成的 Id)并将其上传到作为 ftp 服务器的目标文件夹(这也填充在先前的路由中)
那么如何设计一条从端点到端点都是动态的新路由,如下所示?
from("activemq:queue:upload" )
.from("file:basePath/"+{idFromExchangeObject})
.to("ftp:"+{serverIpFromExchangeObject}+"/"+{pathFromExchangeObject});
【问题讨论】:
-
我认为这不可能。看到这个答案:stackoverflow.com/a/15254698/86798
-
是吗?谢谢@Mr Gravity,不过我还是会做一些研究!
-
VG Hedge - 在您链接到的问题中,Claus 还回答说该问题已得到解决。
-
可以使用
.toD()指定动态Camel端点camel.apache.org/how-to-use-a-dynamic-uri-in-to.html -
@Mike Barlotta 谢谢。这解释了如何形成动态到 () 端点。现在如何形成动态 from() 端点?
标签: apache jms apache-camel activemq endpoint