2013-10-28 71 views
0

我對創建Web服務的方法有點困惑。具有多個Web方法的多個端點或單個端點

問題陳述: 我應該創建像下面

<jaxws:endpoint id="stateService" implementor="com.service.StateServiceImpl" address="/stateservice" /> 
<jaxws:endpoint id="countryService" implementor="com.service.CountryServiceImpl" address="/countryservice" /> 

或者創建一個單獨的終點有兩種方法

public class Service{ 

@WebMethod(operationName="country", action="countryservice") 
public String countryService() {} 

@WebMethod(operationName="state", action="stateservice") 
public String stateService() {} 

} 

我的兩個服務或目的有兩個端點服務操作是不同的。

我目前使用Apache CXF的方法1,即單獨的終點。

一個優於另一個的優點。

回答

1

我認爲這主要是你想如何宣傳方法的關係的問題。我的經驗法則是:如果它們沒有任何關聯,那麼單獨的終點。如果他們對相同的數據進行操作(即使操作不同),那麼在同一個端點中將其作爲單獨的方法進行捆綁更合理,以傳達數據源相同。

但是,我確定你會得到很多答案......這最終會歸結爲對你和你的顧客最有意義的東西。

+0

與客戶要求承包商在他家三樓安裝按摩浴缸一樣合理。承包商可能對設計有合理的反對意見,但最終是客戶的要求。如果客戶可以爲其付款並進行必要的結構性回填,那麼承包商爲什麼要拒​​絕? – PaulProgrammer

+0

如果服務是單個端點上的方法,那麼客戶端可能會有一些限制來簡化實現。即使這在構造上並不美觀,但在其他限制條件下不會使其成爲錯誤的設計。 – PaulProgrammer

+0

你不斷刪除你的評論。 :) – PaulProgrammer