【Java】【JAX-WS】 Webサービス / Metro [2] ~入門編 / クライアントサイドの構築 ~

■ はじめに

http://blogs.yahoo.co.jp/dk521123/36139336.html
の続きで、今回はクライアント側を構築する

■ クライアント側のコードを生成する

 * クライアント側は簡単。以下の関連記事でやった「wsimportコマンド」を使う
wsimportコマンドによる Web サービス・クライアントの作成
https://blogs.yahoo.co.jp/dk521123/36130626.html
 * サーバ起動を起動した状態にしておく
https://blogs.yahoo.co.jp/dk521123/36139336.html

手順

[1] コマンドプロンプトを立ち上げ、wsimportコマンド(以下「wsimportコマンド」を参照)を実行し、
    クライアント側のコードを自動生成する
[2] dirコマンドで「com」ってフォルダができてるはずなので、
    そのフォルダをEclipseにプロジェクト内にコピペする
[3]の自動生成コードを使って、クライアント側を実装する(以下「サンプル」を参照)
wsimportコマンド
wsimport -keep -p com.sample.webservice.client.stub http://localhost:8080/SampleService/service/SampleWebService.ws?wsdl

■ サンプル

Main.java

package com.sample.webservice.client;

public class Main {

  public static void main(String[] args) {
    SampleWebServiceService service = new SampleWebServiceService();
    SampleWebService proxy = service.getSampleWebServicePort();
    String result = proxy.sayYourAge("Ken", 11L);
    System.out.println("Result : " + result);
  }
}

実行結果

Result : Ken's age is 11.

関連記事

Webサービス / Metro [1] ~入門編 / サーバサイドの構築 ~

http://blogs.yahoo.co.jp/dk521123/36139336.html

Webサービス / Metro [6] ~ SSL通信を行うには / Client側 ~

http://blogs.yahoo.co.jp/dk521123/36516080.html

Webサービス / Metro [8] ~ SSL通信を行う (2) / クライアントサイド ~

http://blogs.yahoo.co.jp/dk521123/36528991.html

Webサービス / Metro [9] ~ タイムアウトを設定する / クライアントサイド ~

http://blogs.yahoo.co.jp/dk521123/36559479.html

【トラブル】【JavaWebサービスでのクライアント側の例外について

https://blogs.yahoo.co.jp/dk521123/37114682.html

wsimportコマンドによる Web サービス・クライアントの作成

http://blogs.yahoo.co.jp/dk521123/36130626.html