2017-10-23 18 views
0

私はクライアントから送信されるWSDL XMLファイルを持っています。通知サービス用です。私たちのクライアントがURL http://xxx.xxx.com/notificationに私たちのサーバーにSOAP通知を送信することを意味します。Java WebサービスでSOAP XMLを受信する方法

私はSOAP Webサービスで新しく、JAVA WebサービスでSOAP XMLを取得する方法を特定できません。

あなたがもっと明確にする必要がある場合はお知らせください。

答えて

0

あなたは今、あなたは、レシーバクラスを作成し、Eclipseを使用している場合は可能性が受け取ることを期待するもの場合:

Eclipseのメインメニューで、ファイルをクリック>新規>その他。

[ウィザード]ダイアログで、[Webサービス]ノードを展開し、[Webサービス]を選択して[次へ]をクリックします。

Webサービスウィザード画面で、WebサービスタイプのBottom up Java bean Web Serviceを選択し、Browseボタンを使用してサービス実装クラスを選択します。

次の画面には、作成されるWSDLファイルの名前と、SOAP Webサービスを通じて公開可能なサービス実装クラスで使用可能なパブリックメソッドが一覧表示されます。

[次へ]をクリックして続行します。 Eclipse IDEはWebサービスファイルを生成します。

これで、WSDLからクライアントコードを作成できますが、これは非常に一般的ですが、出発点になります。

1

あなたの要件が何であるかはっきりしていません。それは、クライアントがあなたのサービスを呼び出すためにそれを使用することができるように、またはサードパーティのサービスを消費するためにあなたに与えられたwsdlを使用する必要があるようにwsdlを生成することです。

あなたはwsdlを持っており、wsdlを使用してサービスを呼び出すと仮定すると、以下は私が提案したものです。

あなたはクラスを生成するための日食をすることができます。それを行うには、wsdlファイルに変更があるたびに行う必要があります。

mavenやgradle、antなどのビルドツールを使用している場合は、プロジェクトをビルドするたびに「生成」プロセスを自動化できます。

たとえば、Mavenを使用している場合は、以下のようにjaxws-maven-pluginを追加できます。下記のXMLは、あなたが1つのWSDLファイルを持っていて、それによって公開されたWebサービスをヒットしたいと思われるあなたの質問からhttps://github.com/mojohaus/jaxws-maven-plugin/blob/master/src/it/jaxws-ri-samples/fromwsdl/client/pom.xml

<build> 
    <sourceDirectory>../src</sourceDirectory> 
    <finalName>jaxws-fromwsdl-client</finalName> 

    <plugins> 

     <!-- generate web services classes from wsdl file --> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>jaxws-maven-plugin</artifactId> 
     <version>1.11</version> 
     <executions> 
      <execution> 
      <goals> 
       <goal>wsimport</goal> 
      </goals> 
      <configuration> 
       <verbose>true</verbose> 
       <wsdlUrls> 
       <wsdlUrl>http://localhost:8080/jaxws-fromwsdl/addnumbers?wsdl</wsdlUrl> 
       </wsdlUrls> 
       <packageName>fromwsdl.client</packageName> 
      </configuration> 
      </execution> 
     </executions> 
     </plugin> 


     <!-- configure compiler plugin to pickup only server side java files --> 
     <!-- note that at compile phase, wsdl's classes are already generated --> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <configuration> 
      <source>1.6</source> 
      <target>1.6</target> 
      <includes> 
      <include>*/client/*.java</include> 
      </includes> 
     </configuration> 
     </plugin> 

    </plugins> 
    </build> 
0

から取られ

Mavenのpom.xmlファイルに以下を追加します。

1)コマンドプロンプトに移動して、wsdlファイルのwsimportを-keepとして実行します(コマンドから生成された.javaファイルを保存します)。
2)生成されたJavaファイルをワークスペースに移動します。
3).wsdlファイルでサービス名とポート名を探し、その後にそれらのオブジェクトを作成します。
4)その後、必要に応じて.wsdlで操作してください。

関連する問題