web-dev-qa-db-ja.com

Java class \ sourceからWSDLを生成します

「ロジック」クラス(CheckAuthenticationDataLogic.Java、GetVocabulariesLogic.Javaなど)を含むパッケージがあります。そして別のクラス-ApiService.Javaはwsdlを生成するために使用されます。 ApiService.Javaには、次のようなメソッドがたくさんあります。

/**
   * Check authentication data.
   * @param contractNumber - number of contract.
   * @param msisdn - msisdn.
   * @param superPassword - super password.
   * @return result of authentication.
   */
  @WebMethod
  @WebResult(name = "result")
  public CheckAuthenticationDataResult checkAuthenticationData(@WebParam(name = "contractNumber")
                                                               final String contractNumber,
                                                               @WebParam(name = "msisdn")
                                                               final String msisdn,
                                                               @WebParam(name = "superPassword")
                                                               final String superPassword) {
    return runLogic(new CheckAuthenticationDataLogic(contractNumber, msisdn, superPassword));
  }

ご覧のとおり、これは単なるプロキシメソッドです...したがって、同じ作業を2回行うことを避け、ApiService.Javaを記述せずにロジッククラスから直接WSDLを生成したいと思います。この目的のためのツールまたはライブラリは存在しますか?

10
Oleksandr

wsgen ツールは、JAX-WSWebサービスで使用されるJAX-WSポータブルアーティファクトを生成します。サービスをデプロイするとJAXWSランタイムが自動的にWSDLを生成するため、開発時にWSDLを生成する必要がないことに注意してください。

JAX-WS RI ドキュメント 、特に サンプル を確認することをお勧めします(fromjavaサンプル)。

16
Pascal Thivent

Axis2 は別の選択肢であり、具体的にはJava2wsdlコマンド/プラグインです。

3
puug

Metro( http://metro.Java.net/ )Webサービススタックは、注釈付きJavaからWSDLを生成するためのツール(wsgen)を提供します。

0
Frank Grimm