web-dev-qa-db-ja.com

WSDLファイルからJavaクラスを生成する方法

Androidアプリケーションに取り組んでいます。Webサービスを使用する必要があります。wsdlファイルがありますが、それをJavaに変換して、 Javaプログラムで関数を使用できます。wsdlファイルをJavaに変換する方法はありますか?

25
Farhan

はい、使用できます:

Wsdl2Java Eclipseプラグイン

これで必要なのはwsdlを提供するだけで、クライアントであるJavaクラスが自動的に生成されます。

26
Oscar Gomez

WsdlからJavaクラスを生成するのに最適なツールは「cxf wsdl2Java」です。その非常にシンプルで使いやすい。 axis2にあるデータ型の複雑さを発見しました。ただし、残念ながら、 Android環境ではコンパイル時の「Java/javax」パッケージ名 を許可しないため、Androidアプリケーションでこれらのクライアントスタブコードを使用することはできません。パッケージ名を変更します。

また、Android.jarでは、Webサービスを使用するためのすべてのjavax。*ソースが利用できません。これらを解決するために、Android用にこの WSクライアント生成ツール を開発しました。

バックグラウンドでは、「cxf wsdl2Java」を使用して、JavaプラットフォームのAndroidクライアントスタブを生成します。また、Webサービスをよりスマートに使用するためのソースをいくつか作成しました。

Wsdlファイルの場所を指定するだけで、ソースとライブラリが提供されます。プロジェクトにソースとライブラリを配置するだけです。エンタープライズプロジェクトで行う「メソッド呼び出し方式」で呼び出すことができます。名前空間/ SOAPアクションなどを知る必要はありません。たとえば、ログインするサービスがあります。は:

LoginService service = new LoginService ( );
Login login = service.getLoginPort ( );
LoginServiceResponse resp = login.login ( "someUser", "somePass" );

そして、完全にオープンで無料です。

12
Asraful Haque

jdk 6には、WSDLからJavaクラスを作成するために使用できるwsimportが付属しています。また、Serviceクラスを作成します。

http://docs.Oracle.com/javase/6/docs/technotes/tools/share/wsimport.html

8
Patrick P

自動解析してWebサービスに接続するための素晴らしいツールを設立しました

http://www.wsdl2code.com

http://www.wsdl2code.com/pages/Example.aspx

 SampleService srv1 = new SampleService();
     req = new Request();                     
     req.companyId = "1";
     req.userName = "userName";                                     
     req.password = "pas";
     Response response =    srv1.ServiceSample(req);
5
Bennya

[〜#〜] jaxb [〜#〜]がインストールされていると仮定すると、次のディレクトリに移動しますC:\Program Files\jaxb\binここでコマンドウィンドウを開きます

> xjc -wsdl http://localhost/mywsdl/MyDWsdl.wsdl C:\ Users\myname\Desktop

C:\ Users\myname\Desktopは、お好みに応じて変更できる出力フォルダーです

http://localhost/mywsdl/MyDWsdl.wsdlはWSDLへのリンクです

5
George Otieno

オスカーが以前に提案したEclipseプラグインを使用できます。または、コマンドラインを使用している場合は、コマンドプロンプトからApache Axis WSDL2Javaツールを使用できます。詳細はこちらをご覧ください http://axis.Apache.org/axis/Java/reference.html#WSDL2JavaReference

4
Vini

WSDL2Java Codegenを使用できます(or)単に 'Web Service/WebServiceClient' WizardをEclipse IDEで使用できます。 IDEを開き、 'Ctrl + N'を押し、 'Web Service/WebServiceClient'を選択し、wsdl URL、ouputフォルダーを指定して、[完了]を選択します。

必要な完全なソースファイルが作成されます。

2
Anuj Balan

非常に複雑なWCF Webサービスがあり、いくつかの異なるツールを試しましたが、ほとんどの場合、Webサービスに接続できませんでした。最後に、私はこれを使用しました:

http://easywsdl.com/

これは、何の変更もなしに動作するクラスを生成するツールの1つにすぎません!

2
robocik