2013-10-21 42 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