検索
連載

いまさら聞けない「Webサービス」の常識企業システムの常識をJBossで身につける(6)(2/4 ページ)

企業向けアプリケーションのさまざまな“常識”をJavaのオープンソース・フレームワーク群である「JBoss」から学んでいきましょう。企業システムを構築するうえでの基礎となる知識をリファレンス感覚で説明していきます。初心者から中堅、ベテランまで大歓迎!

PC用表示 関連情報
Share
Tweet
LINE
Hatena

JBoss WSとは

 JBoss WS(Web Services)は、JBossプロジェクトのなかでWebサービスを扱うものとして開発されています。前述のとおり、JAX-WSを実装しておりJ2EE 1.4とJava EE 5に準拠しています。シンプルでかつ簡単な開発が可能となっており、作業負担のさらなる軽減が期待されます。

JBoss WSを利用するサンプルを作ろう

 サンプルで作成するのは、Webサービス利用者のJavaプログラムとWebサービス提供者のJavaプログラムです。それ以外は自動的に生成できるので、特に意識する必要はありません。以下がサンプルの構成です。

図3 サンプルの構成
図3 サンプルの構成
  1. Webサービス利用者のJavaプログラムで、WebサービスServiceLocatorからWebサービスを取得し、メソッドを呼び出す
  2. 自動的にWebサービス提供者のJavaプログラムのメソッドが呼び出される
  3. Webサービス提供者のJavaプログラムで、処理を行う。今回は、引数に与えられた数値を加算する簡単なプログラムとしている
  4. 処理後、Webサービス提供者のJavaプログラムは処理結果を戻す
  5. 自動的にWebサービス利用者のJavaプログラムに結果が戻す

 Webサービスの実装は2種類の方法があります。Webサービスの処理を実装したJavaプログラムからWSDLを作成する「ボトムアップ」と、WSDLからWebサービスのテンプレートを作成する「トップダウン」です。

 今回のサンプルでは、JavaプログラムからWSDLを作成する「ボトムアップ」を用いて実装します。また同時に、Webサービスのインターフェイスを実装したコードも自動生成します。実装の流れは、「Javaプログラム⇒WSDL⇒Webサービスのインターフェイス実装コード」のようになります。

 では、実際にサンプルを作成してみましょう。開発を行う環境については、これまでの連載を参考にしてください。

【1】サンプルを動作させるWebプロジェクトを作成

 Eclipse上で[ファイル]→[新規]→[プロジェクト]を選択します。

図4 Webプロジェクトの新規作成
図4 Webプロジェクトの新規作成

 [新規プロジェクト]のダイアログで、[Web]→[動的Webプロジェクト]を選択し、「次へ」をクリックします。

図5 [動的Webプロジェクト]を選択
図5 [動的Webプロジェクト]を選択

 [新規動的Webプロジェクト]ダイアログを以下のように入力し、[完了]をクリックします。

  • [プロジェクト名]:sampleJBossWebService
  • [Target Runtime]:JBoss 5.0 Runtime
  • [動的Webモジュールバージョン]:2.5
  • [構成]:JBoss 5.0 Runtime デフォルト構成
  • [EARメンバーシップ]:[EARにプロジェクトを追加]にチェック
図6 [新規動的Webプロジェクト]
図6 [新規動的Webプロジェクト]

 以下のようにプロジェクトが作成されます。

図7 新規に作成されたプロジェクト
図7 新規に作成されたプロジェクト

【2】Javaプログラムを作成

 sampleJBossWebService/src配下に、以下のクラスを作成します。ここでは、パッケージ「web.service.test」配下に作成したとします。このクラスは、「引数に与えられた値を加算する」という簡単なクラスです。

package web.service.test;
 
/**
 * 引数に与えた数値を計算するWebService
 */
public class SimpleWebService {
 
	/**
	 * 引数に与えられた数値の和を返却します。
	 * @param a
	 * @param b
	 * @return
	 */
	public int add(int a, int b) {
    	return (a + b);
    }
}
SimpleWebService.java

 次ページでは、引き続きサンプルを実装し、実行してみます。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る