2013-02-28 58 views
0

最初,我從第三方發送了一個wsdl,並選擇了jax-ws作爲解決方案。我很快意識到web服務並沒有包含所有的功能,當我問到它時,我又被髮送了4個wsdls ...每個函數一個。Jax-ws多個web服務

每個函數都有它自己的wsdl。對於第一階段來說事情沒有問題,因爲只有5個功能,但在接下來的3個月中,我們又增加了40個功能。有人可以建議我如何處理這個問題嗎?我需要一些方法來停止重複的代碼。目前我有5個代碼塊,它們在設置服務時看起來非常相似。我不願意重複它40次。

更糟的是,它們都共享一個共同的xsd,但實際上並沒有使用xsd,而是擴展類型使其看起來相同,但在所有wsdls中都有不同的名稱。

+1

IMO如果第三方選擇爲每個Web服務發送一個WSDL文件,那麼我會建議你的老闆/公司改變供應商是**糟糕的設計師**。拋開這個問題,也許如果你編寫你用來在這裏使用WS人員的代碼,可能會給你一個關於你的設計問題的問題。 – 2013-02-28 19:03:06

+0

每個端點都有不同的目標網址嗎?如果是這樣,你幾乎卡住了。與設計端點的人員交談,並告訴他們停止創建每個操作的wsdl。 – jtahlborn 2013-02-28 19:05:05

+0

我同意你的意見。當我看到發生了什麼事情時,我幾乎適應了。每個操作都有一個獨立的端點。更糟糕的是,我們堅持與這些提供商。明天我會把這個升級到合適的人。據我瞭解他們的系統仍在開發中。 – Leon 2013-02-28 19:20:11

回答

0

解決方案是使用反射和泛型。我有一個基類,可以構造一個服務並根據類型連接到一個端口。

不過,這並不理想,你真的不想要這麼多wsdls。