2013-10-21 82 views
0

您好我想在其中用例建立一个代理定义:WSO2配置直通代理

1)我有个客户

2)WSO2 ESB 4.7.0

3)2 REST服务:R1和R2

我希望这种情况发生:

1)客户端发送一个请求到ESB代理

2)代理将请求转发给R1

3)如果R1的响应没有发生任何错误,则应将相同的响应发送给客户端和R2,否则应将错误消息发送回客户端。

任何人都可以帮我写这个condifuration吗? 非常感谢

回答

0

是的,你可以通过服务链来做到这一点。 http://wso2.com/library/articles/2011/01/wso2-esb-by-example-service-chaining/http://docs.wso2.org/display/ESB470/Service+Chaining+Example解释了肥皂中的服务链,但它与休息类似。

+0

感谢您的帮助......在我的使用案例中,我无法导入ESB中的两个REST服务R1和R2。它们必须位于独立的应用程序容器中,如Tomcat。那么,也许可以通过使用Mediator来解决? – Alex

+0

当然。这里部署服务的地方并不重要。配置端点以正确调用这些服务。 – Ragavan

+0

我按照你的建议。这似乎是正确的方式...但现在我面临这个问题:客户端发送一个REST请求到R1service。 R1回答一个JSON/XML对象,我必须得到一个“代码”元素和一个“DocID”。如果Code == ok,我必须发送一个REST请求到R2Service,并附加DocID。 (即localhost:8080/service/MyR2service/DocID)。我使用Switch mediator获取代码(只有xml,而不是json?)和DocID。如何构建一个RESTRequest到R2Service,并将此参数添加到查询url?I考虑过Callout调解员,但我不知道如何使用它与休息请求 – Alex