假設我在SOA項目中有2個Web服務A和B.這兩個Web服務都在遠程服務器上運行。 Web服務A依賴於只能從本地安裝在人類角色機器上的桌面應用程序獲得的信息,並且所有Web服務A都會提供此信息)。有數百個這樣的人類演員使用同一本地安裝的應用程序提供Web服務A需要的自己的信息。 Web服務B需要來自Web服務A的這些信息,其結果(這是該項目的全部好處)被提供給發起該過程的人類演員(通過登錄到系統並單擊某個命令按鈕)。因此,這個人類角色的行爲就像Web服務B的使用者一樣。問題是,如何讓這個本地安裝的應用程序充當Web服務A(在SOA項目的上下文中)?如何將本地安裝的應用程序公開爲Web服務?
這個問題最好由一個在Web服務和SOA方面有豐富經驗的人來解答。
此SOA項目使用java,就像基於Java的ESB一樣,雖然桌面應用程序是Windows應用程序,但沒有Microsoft特定的服務正在運行。該應用程序爲外部進程提供c/C++ API來調用和檢索Web服務A所需的信息。我想要的是Web服務A和B都駐留在遠程服務器上,並通過ESB彼此交互,但問題是如何使Web Service A可用的本地應用程序信息?
謝謝您的輸入。我更新了我的問題,使其更加清晰。我對基於ESB的解決方案感興趣。您能否詳細介紹一下如何使用ESB來解決這類問題?對我來說,看起來我必須開發一個小型Windows客戶端,通過提供的API與桌面應用程序連接,並獲取這些信息,並以某種方式爲其提供Web服務A.通常,Web服務從網絡上的數據庫獲取其信息,但這種情況不同。 – ace 2011-05-08 19:00:51
情景是這樣的:人類演員登錄到一個網站,並點擊一個按鈕,請求Web服務B提供的服務提供他的ID。 Web服務B使用此ID向Web服務A發送請求。 Web服務A使用此ID並知道該地址與哪個特定的Windows客戶端通信以獲取信息。這部分是如何工作的? – ace 2011-05-08 19:32:29