2011-01-13 15 views
5

Javaクライアントを使用するいくつかの.Net Webサービスがあります。各Webサービスには独自の名前空間がありますが、すべて共通のクラスを使用しています。これらがWSDLとして公開され、Javaコードに生成されると、同じ.NETクラスのJavaで多くの重複を取得します。複数のWebサービスで同じオブジェクトが重複したクラスになる

共有ネームスペース(XML)の下でエクスポートされる一連のWebServiceオブジェクトを.NETで定義する方法はありますか?あるいは、Javaでwsimportを使用して、各重複クラスのインスタンスを1つだけ生成することができますか?

答えて

0

サービス側からは、すべてのサービスを記述する特別に細工された単一のWSDLを持つことができます。その方法についてはthis articleを参照してください(asmxサービスに適用可能)。

.NETクライアントの場合、非常に使いやすいwsdlツールのsharetypesオプションを使用すると、一度生成され共通タイプが複数のサービスプロキシ間で再利用されるというオプションがあります。うまくいけば、同様のツールやオプションがJavaクライアント側に存在する可能性があります。

0

-pのオプションは、wsimportです。これにより、WSDLで指定された名前空間を、指定したパッケージに上書きできます。各WSDLに同じパッケージを指定すると、各クラスのインスタンスが1つだけになります。

関連する問題