2012-03-18 6 views
2

Webサービスのapache cxfクライアントを作成するには、JaxWsProxyFactoryBeanを使用する場合、エンドポイントアドレスとSEIコードが必要です。エンドポイントアドレスの提供については問題はありませんが、SEIの提供方法は?あなたはjarファイル内のインターフェイスをエクスポートしてjarファイルを顧客に渡すだけですか? 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ファイルを作成し、あなたのインタフェースがあまり頻繁ではなく、たとえそれが変更されたとしても、それは内部リポジトリに新たに公開されます。

関連する問題