2012-06-08 102 views
2

我是使用java開發web服務的新手。我有一個學術項目,我需要做動態服務組合。爲此,我無法直接爲特定服務創建服務客戶端,因爲如果我這樣做,那麼客戶端只會調用該特定服務。客戶需要搜索各種Web服務,然後在運行時選擇任何服務,並在運行時調用該服務。如何發佈和發現java web服務

我能夠使用Eclipse(indigo)開發Web服務(JAX-WS),我還爲該Web服務創建了客戶端,並且每件事情都很好。現在我的問題是,在創建客戶端時,我很難編寫客戶端來調用特定的Web服務(因爲我使用服務的WSDL文件創建客戶端)。但是我實際上需要調用搜索到的服務中的任何一個,但爲此我需要將服務發佈到某處然後發現它然後調用它。

我試着將服務發佈到juddiv3。但是在判斷3中,我只能發佈juddiv3提供的示例服務。當我嘗試發佈由我創建的服務時,它不會顯示在已發佈的服務組中。

是否有任何其他的UDDI服務器,我可以在我的本地機器上安裝,然後發佈和發現服務。此外,我無法弄清楚如何創建一個客戶端,該客戶端在運行時將自行修改,以便從各種搜索服務中調用任何一項服務。

請提供必要的步驟和代碼。

感謝

回答

1

您可以使用JUDDI(http://juddi.apache.org/)。

juddi基於UDDI v2.0,v 3.0

在這裏,您可以發佈以及發現您的Web服務。

對於集成,你必須做一些應用程序,它集成了jUDDI

但我覺得對於你的學術項目而言,爲你的目的,jUDDI最適合! (:))

+0

正如提問者所說,他試過這個,也許你可以添加一個小樣本,它的作品? –

0

jUDDI在源代碼樹幹中有一個例子的船載。你可能想檢查出來。很難從您提供的小信息中猜出問題所在。考慮聯繫jUDDI團隊尋求進一步的幫助。 http://svn.apache.org/repos/asf/juddi/trunk/juddi-examples/。在jUDDI用戶指南中有關於UDDI的額外文檔,該文檔位於jUDDI網站

0

您無法直接在jUDDI上發佈。您還需要在jUDDI服務器中創建發佈者實體。您可以在獨立服務器的juddi應用程序的「Classes」文件夾中找到Rename4Sales和Rename4Marketing示例。使用這些XML作爲您的基礎並創建您自己的實體。您還需要配置服務器的登錄憑證。

我建議你按照jUDDI博客上的教程。