2013-04-30 83 views
1

我知道你可以通过创建骆驼上下文将骆驼嵌入到Web应用程序或独立应用程序中。这意味着路线可以从您的应用程序中启动。大!驼峰路由同步响应Web应用程序

我该如何走另一条路并让我的路线返回对应用程序的响应,从而创建响应/请求并进而实现同步交互?

回答

0

你可以用ProducerTemplate来做到这一点。

你需要做的是抓住骆驼上下文并创建一个(that you should reuse)。

ProducerTemplate pt = camelContext.createProducerTemplate(); 
... 
String text = pt.requestBody("direct:someroute", "Hello World", String.class); 
+0

谢谢佩特。我有点得到这个。尽管如何处理响应?我需要一个响应来使交互同步。 – user1769045 2013-05-01 10:19:37

+0

具体说明 - blueprint.xml如何发回,或者ProducerTemplate类是否需要以某种方式捕获它?我很困惑。 – user1769045 2013-05-01 10:21:00

+0

好吧,我用producerTemplate更新了答案,以便收到回复。如果交换模式为InOut,骆驼路由将回应“来自”URI(如果适用的协议)与Exchange中路由末端的任何内容。 'pt.requestBody'将ExchangePattern设置为InOut。阅读更多关于这里:http://camel.apache.org/request-reply.html – 2013-05-01 18:48:24