JAX-WS RI を使用して新しい Web サービスを実装しており、クライアント ライブラリを構築して API ドキュメントを自動生成するための最良の方法を見つけようとしています。
次のようなエンドポイント実装 (com.mysite.webservice.MyServiceEndpoint) があるとします。
@WebService(serviceName = "MyService", endpointInterface = "com.mysite.webservice.MyService")
public class MyServiceEndpoint implements MyService
{
public void myMethod(final com.mysite.webservice.spec.MyObject blah) {
//Do Something
}
}
および参照されたインターフェイス (com.mysite.webservice.MyService):
@WebService
public interface MyService {
public void myMethod(final MyObject blah);
}
私は現在、実行wsgen
して WSDL を生成し、実行したその WSDL ファイルを使用しwsimport
てクライアント ファイルを生成することにより、Ant ビルド中に動作するクライアントを生成できます。これはすべて正常に機能しますが、生成されたクライアント ファイルで JavaDoc を実行すると、インターフェイスで定義されたドキュメントや、メソッド呼び出しに渡される仕様オブジェクトが明らかに取得されません。代わりに、手動で作成し、JavaDoc を用意したインターフェイスおよび仕様オブジェクトからドキュメントを直接生成します。私が抱えている問題は、自動生成されたオブジェクトが、私が定義したものとは異なるパッケージにあるということです。(com.mysite.webservice instead
のcom.mysite.webservice.spec
)。
そこで、質問を2つ...
1) 自動生成されたオブジェクトを配置するパッケージを指定する方法はありますか?
2)これは、クライアント/生成ドキュメントを構築するための最良のアプローチですか、それとも JAX-WS RI で実行できるより良い方法を見落としていますか?
3) WSDL からではなく、Java SEI (サービス エンドポイント実装) および関連するサーバー側クラスからクライアント クラスを直接生成することは可能ですか。