2016-08-15 46 views
1

我有两个单独的骆驼路由定义在单独的XML文件中。打电话给他们的路线A和B.如何在单独的XML文件中使用骆驼路由

我想路径B引导到第一呼叫路由选择的,结果传递给路线B.

我应该如何去这样做之前?到目前为止,我正在查看direct DSL。

谢谢。

+0

可以请你澄清一下,因为我的英语很差。你想发送请求到B,但在处理路由B请求之前,你想要呼叫路由A?我对吗? –

+0

是只有两个XML文件的问题吗?这两个XML文件如何相关/链接?他们都包含在别的地方吗?一个包括另一个吗?相同的骆驼上下文? –

+0

是的,这是正确的!中间路由被触发以返回中间对象,然后被第二路由使用。 – jhtong

回答

0

解决方案是定义次要路线,并使用vm-direct将两条路线链接在一起。

当被调用时,作为二级路由中的变量存储的对象可以被较早的路由引用,即,路由被顺序执行并且在二级路由完成时挂起。

像这样:

主要途径:

<To uri="direct-vm:....> 
<!-- variables if stored by secondary route available here --> 

二级公路:

<Route> 
    <From uri="direct-vm:.....> 
</Route>