2016-10-04 56 views
0

我有一臺服務器,我可以從此服務器調用我的web服務。 所以我打電話給網絡服務,網絡服務給我一個答案,我想根據答案運行應用程序。 例如:如何爲條件消息配置wso2企業服務總線

answer=curl -i -X GET "http://myserver.com/getStaus"; 
    switch (answer) 
     { 
      case 'ON': 
       saveToQueue('http://myserver.com/getApp1','ON'); 
       do 
        { 
         retryQueueForSend('ON');    
        }while !(lengthQueueForSend('ON')==0) 
        break; 
      case 'OFF': 
       saveToQueue('http://myserver.com/getApp2','OFF'); 
       do 
        { 
         retryQueueForSend('OFF');    
        }while !(lengthQueueForSend('OFF')==0) 
        break; 

      case 'TimeOut': 
       saveToQueue('http://myserver.com/getApp3','TimeOut'); 
       do 
        { 
         retryQueueForSend('TimeOut');    
        }while !(lengthQueueForSend('TimeOut')==0) 
        break; 
     } 
public void saveToQueue(String LinkOfWebservice,String nameOfQueue) 
{ 
... 
... 
.. 
} 
public void retryQueueForSend(String nameOfQueue) 
{ 
... 
... 
.. 
} 
public int retryQueueForSend(String nameOfQueue) 
{ 
... 
... 
return len; 
} 

所以我想實現的WSO2企業服務總線(ESB)這種情況。 我想我必須使用wso2 Message Broker(MB)。 謝謝你的建議。

+0

你說的 「運行應用程序」 呢? – ycr

回答

0

您可以使用WSO2 ESB來執行此操作。

使用REST API [1]在「http://myserver.com/getStaus」中調用您的服務。在REST API序列中,您可以切換介體[2]以識別響應(檢查ON,OFF或超時)。據此執行你的任務。

對於此實現,您不需要WSO2 MB。

注:我假設你的意思是調用後端或運行的另一個API運行APP1

[1] https://docs.wso2.com/display/ESB500/Working+with+APIs [2] https://docs.wso2.com/display/ESB500/Switch+Mediator

+0

謝謝。我想添加隊列,因爲我的Apps可能無法運行,並且在嘗試運行之後。我認爲Message Broker(MB)是必需的。 – user6920966

+0

我不清楚你的情況。如果您將WSO2 MB添加到場景中,則可以通過API來完成。 –

+0

我改變了我的僞代碼。 – user6920966