IBMミドルウェアは多くのプラットフォームで提供されているため、プラットフォームによってインストール方法や前提ソフトウェアが異なります。前提システム、前提ソフトウェア、詳細な手順は、製品に付属するマニュアルを参照してください。ここでは、Windows版に限定して説明します。
前提として、以下のシステムを利用していると仮定します。
システム:インテル系 PC/CPU Pentium4 1GHz程度、メモリー 1GB程度 オペレーティング・システム:Microsoft Windows 2000+SP2 |
また、ここでは以下の製品を使用してWebSphereでWebサービスを稼動させる方法をご紹介します。
IBM WebSphere Studio Application Developer V4.03 |
製品は通常CD-ROMで配布されています。CD-ROMをドライブにマウントするとインストールが始まります。自動的に始まらないときは、setup.exeを実行してください。インストールのウィザードは特になにもせずに進めてかまいません。
以下の Java プログラムをWebサービス化します。
public class TestService { public String getMessage() { return "HelloWorld!"; } } |
StudioAD は、エクリプスと呼ばれるオープン・ソースのワークベンチ上で稼動します。ワークベンチ上にはたくさんの小さなウィンドウが開きます。これをビューといいます。ビューはいくつかの種類の組み合わせで同時ワークベンチ上に表示され、組み合わせを切り替えて作業することができます。組み合わせの単位のことを「パースペクティブ」といいます。
パースペクティブは、ワークベンチの左側にある「ショートカットバー」と呼ばれるボタンで切り替えることができます。
StudioADでは、開発を「プロジェクト」という単位(フォルダー)で管理します。必ずプロジェクトを作成する必要があります。
StudioADでは、Webサービス・アプリケーションをJ2EEのWebアプリケーションとして構築します。Webアプリケーションとして稼動させるには「EARファイル」の単位となる「エンタープライズ・アプリケーション」プロジェクトと「WARファイル」の単位となる「Web」プロジェクトを作る必要があります。
このファイルをWebサービスにするには、Webサービスのウィザードを使います。簡単なプログラムなので余計な設定は必要ありません。
上記の状態ですでにWSDL、SOAPのサービスとして公開されていますが、他のマシンからアクセスする場合には若干注意が必要です。
サービス記述WSDL | http://localhost:8080/wsadWeb/wsdl/TestService-service.wsdl |
バインディングWSDL | http://localhost:8080/wsadWeb/wsdl/TestService-binding.wsdl |
SOAPエンド・ポイント | http://localhost:8080/wsadWeb/wsdl/soap/rpcrouter |
ここで、「wsadWeb」の部分はコンテキスト・ルートといい、J2EEのWebアプリケーションのインストール単位で決まる任意名です。
外部からアクセスする場合、localhostの部分をホスト名に変更すればいいのですが、サービス記述WSDLから <import> 要素でバインディングWSDLを参照している部分がlocalhostになってしまっており、正しくアクセスできません。他のマシンからアクセスする場合には、WSDLファイルの<import>要素のURLを適切に修正してください。複合オブジェクトや配列を使うメソッドの場合は、バインディングWSDLが <import> 要素でXSD(XMLスキーマ・データ)を参照しますので、それも修正します。
以下の手順でWAS V4.0で稼動させることができます。
WAS アドバンスド版以上では、「リモート・サーバー」としてWASを登録することにより、StudioADから直接インストールすることも可能です。
Javaクライアントからアクセスする場合は、proxyパッケージの下にプロキシークラスが自動生成されますので、それを利用します。インスタンス化し、メソッドをアクセスするだけです。HTTPプロキシーの通過、基本認証へのログイン方法は、IBM のサイトに情報があります。