2012-03-18 48 views
2

爲客戶創建Web服務的Apache CXF的客戶,如果他們使用JaxWsProxyFactoryBean,他們需要的端點地址和SEI代碼。關於提供端點地址沒有問題,但您如何提供SEI?你只需將一個界面輸出到一個罐子裏,然後把罐子交給客戶?每次更換SEI時,都必須與所有客戶聯繫並再次提供罐子?的Apache CXF - 提供SEI給客戶

我的意思是在下面的例子中IDataService接口:

 
public static void main(String[] args) throws SomeException { 

    JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); 
    factory.getInInterceptors().add(new LoggingInInterceptor()); 
    factory.getOutInterceptors().add(new LoggingOutInterceptor()); 
    factory.setServiceClass(IDataService.class); 
    factory.setAddress("http://localhost:8080/WSTest/services/dataService"); 
    IDataService client = (IDataService) factory.create(); 

} 

回答

3

理想情況下,你應該只給他們服務的WSDL - WSDL應該在這裏的合同使用,他們可以生成自己的一套使用模板什麼工具可供他們使用 - wsdl2java等

如果客戶端是貴公司的內部,那麼是的,您還可以創建一個只包含界面,類型,消息的精簡項目,並將其打包爲jar並提供該jar通過一些內部的倉庫,假設你的界面不經常,即使它改變了,th在它被重新發布到內部存儲庫。