2012-12-10 15 views
5

Spring Web Servicesを使用してWSDLファイルからWebサービスクライアントを作成できるかどうかを知りたいと思います。Spring-WSを使用してWSDLファイルからWSクライアントを作成することはできますか?

私は非常にWSDLを意味していますが、当面はXSDがありません。

しかし、Josh Longの「Spring Recipes A Problem-Solution Approach」、Hamidreza Sattariの「Spring Web Services 2 Cookbook」とチュートリアル自体(6. Using Spring Web Services on the Client)を読んだことがあります。

Webservice-Client: Common approach with Spring WS, JAXB and just one WSDL file?またはSpring-ws client from WSDL(ここではstackoverflow)などの他の投稿も読んだことがありますが、これ以上の結果はありません。

私も春のフォーラムで質問をしてきましたが、60以上の読み取り無回答後:Is it possible to create a WS-client from WSDL file using SWS? (It seems not)

はたぶん、それは不可能です。

ありがとうございました。

+0

「WSクライアントを作成する」とはどういう意味ですか? WebServiceTemplateクラスを使用して、SOAPメッセージに任意のものをラップすることができるためです。クライアントが使用できるPOJOクラスを作成することを本当に考えていると思います。 WSDLに 'type'セクションがある場合、そのWSDLをXJCコンパイラで実行し、クラスを取り出すことができます。 – kdgregory

+0

¿それ以上の結果はありませんか?このプロセスではどのようなエラーがありますか?何を試しましたか?いくつかのコードを表示してください。 – Alfabravo

+0

ありがとう@kdgregory、私が本当に意味することは、[POJOを送信して受信する:マーシャリングとアンマーシャリング](http://static.springsource.org/spring-ws/sites/2.0/reference/html/client.html #d5e1811)、私はXJCが必要です。 Alfabravoにも感謝の意を表します。私の唯一の問題は、kdgregoryが言ったようにPOJOを生成することでした。私は[WebServiceMessageとWebServiceTemplateを送信する]ことができます(http://static.springsource.org/spring-ws/sites/2.0/reference/html/client.html#d5e1787)が、静的Stringメッセージ(StreamSourceを作成するためにはStringReader)は私が望むものではありませんでした。 – jbbarquero

答えて

14

あなたはこのようにそれを行うことができます。

  1. JDKディストリビューションに付属しているXJCツールを使用してJava型を生成 - xjc -wsdl file.wsdl

  2. そして、生成されたJavaタイプを使用して、WebserviceTemplateを使用し、説明hereを使用してクライアントを作成します。

+0

私は-wsdlオプションを知らなかった(実際には私はmavenの作業に慣れていたので、XJCを呼び出すためにjaxb2-maven-pluginとしてプラグインを使って作業しています) Thanks @Biju Kunjummen私に正しいオプションを提示するために。 明日は試してみます。 – jbbarquero

+0

mavenプラグインを使用して、wsdlに基づいてクラスを生成することができます。[このオプション](http://mojo.codehaus.org/jaxb2-maven-plugin/xjc-mojo.html#wsdl)をチェックしてください。 – evandongen

+0

eclipseからxjc -wsdlコマンドを生成する方法を知っていますか?私はeclipseプロジェクトを作成し、wsdlファイルを右クリックして、 "Web Services"メニューのさまざまなオプションを見てみましたが、どれも正しいように見えませんでした。 – IcedDante

関連する問題