在上一篇寫的是消息中介,接下來是代理服務
代理服務
顧名思義,代理服務充當了WSO2 ESB服務的代理,通常是一個已經存在的服務端點,代理服務可以使用不同的傳輸方式。
客戶可以直接發送請求代理服務的ESB,客戶看到服務代理。
運作示例
配置WSO2 ESB
登入https://localhost:9443/carbon
點選Web Services > List
你會看到已經定義,目前還沒有代理服務。
在左邊點選 Web Services > Add > Proxy Service
您會看到一個标準的代理服務模闆清單中選擇。

從清單中選擇自定義代理模闆 Custom Proxy
輸入代理名稱 "StockQuoteProxy"
下一步,我們将指定此代理服務的WSDL。它可以使用?wsdl顯示實際服務使用WSDL操作。在General Settings下選擇'Specify Source URL'
将提示你輸入wsdl路徑,輸入測試的wsdl檔案路徑 file:~/Java/wso2esb-4.0.2/repository/samples/resources/proxy/sample_proxy_1.wsdl
點選Test URI,測試,出現如下圖,測試通過
下一步,選擇您需要公開的代理服務的服務。預設情況下,代理服務,将使用HTTP和HTTPS傳輸。您也可以添加代理服務的服務參數。在ESB的啟動過程中,它會啟動所有代理服務,并需要擷取代理服務關聯的WSDL。如果ESB可以在statup這些找不到的WSDL,它會忽略這樣的服務,并繼續啟動。
然後點選Next,作為向導的下一步,我們将添加一個目标端點處理順序處理請求消息請求消息和目标。
選擇 Define Endpoint
建立,選擇Address Endpoint.
輸入 http://localhost:9000/services/SimpleStockQuoteService
測試
點選save儲存
下一步,選擇 Define Out Sequence 選擇 Define Inline 建立如下
儲存
然後finish完成
現在的服務清單頁面,您将能夠看到新建立的代理服務。
通過點選相應的圖示,啟用代理服務的統計和跟蹤。
然後啟動axis2服務
啟動完成後
到<esb-home>/samples/axis2Clients 目錄
ant stockquote -Dtrpurl=http://localhost:8280/services/StockQuoteProxy -Dmode=quote -Dsymbol=IBM
你可以在控制台得到
Standard :: Stock price = $165.32687331383468
然後點選 Monitor > Mediation Statistics
點選Proxy Service Statistics
可以看到統計的結果。