骆驼:从另一条路线调用一条路线并同步返回响应

Camel : Invoke one route from another and get back response synchronously

我有如下两条路线A和B

from("some endpoint")  //route A
.to("direct:x")

from("direct:x")  //route B
.doTry()
   .bean("somebean")  //set Custom object PQR as message body 
.doCatch()
   .bean("some other bean")  //log exception
.end()

现在我想在路线 A 完成(已经完成)后调用路线 B。现在如何从路由 A 中的路由 B 返回响应 PQR 对象(仅当路由 B 成功时)?

它应该会自动执行此操作。如果在 to("direct:x") 之后在路由 A 中链接另一个 to ,它将接收来自路由 B 的响应。您可以尝试在 to("direct:x") 之后记录正文并检查结果。