Webサービスクライアントの作成方法を理解できません。 ストーリーは、私がWebサービスを呼び出す必要があるということです。私はそれを理解するので、私は何とかWebサービスの正しいクラスを取得するためにWebサービスを消費する必要があります。WSDLの消費 - どのツールを使用するのですか?
私はこれを行うためのさまざまな方法を調査しました。私はスクリプトでそれらを消費し、次にクラスをインポートしようとしました。
しかし私が既にMaven-2を使用しているので、私はMaven-plugin wsdl2codeを使ってみることを勧めました。これを行うと、私はそれを見るように多くのジャンクファイルを作成します。 I私のpom.xmlファイルに次のように追加しました:これは、ファイルを正常に作成しますが、言ったように、ジャンクたくさんのファイル( xmlsoap /スキーマ/石鹸/エンコーディングは/ ...)もあります
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-wsdl2code-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<goals>
<goal>wsdl2code</goal>
</goals>
<configuration>
<packageName>ws.client.test</packageName>
<wsdlFile>http://localhost:8088/test?WSDL</wsdlFile>
<databindingName>xmlbeans</databindingName>
<outputDirectory>target/ws/test</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
少なくとも私が試した他のWSDLのコンサムよりも(私が見ているように)使用しないためのファイルがたくさんあります。
質問
Webサービスを利用する方法に 一般的なガイドラインはありますか? WSDL ファイルが外部にあるので、それはまた 変化する可能性があり、そしてそのための私はそれが( WSDLが突然変更された場合は が...他の副作用があるでしょうが)、これはMavenの中に自動的に を行って良好な可能性があり を考えました。
wsdl2codeが良い選択である場合は、すべてのファイルは常にそう
MVNクリーン実行するとき、彼らは削除されることを目標catalougeに作成する必要がありますか)?他に適しているツールはありますか?
更新/編集
例えばJAX-WSのwsimportのを使用することで、私は私が望む生成されたファイルを取得します。 しかし、これらを/ target-folderに作成することで、私は実際にWebサービスを呼び出すために同じプロジェクトでそれらにアクセスしたいと思います。これは可能ですか?
ありがとう! wsimportが私の仕事をしているようだ。これは私のために別の問題を提起しました。アイデアがあれば投稿を更新しました。 – user373455
同じプロジェクトや依存しているプロジェクトで問題なく呼び出しても問題ありません。m2eclipseを使用している場合は、余分なプロジェクト構成プロジェクトが必要になります。または、source lookupパスにtarget/generated-sources/wsimportを手動で入れてください。いずれにしても、Maven自体は問題なくプロジェクトを構築する必要があります。 – mglauche