この演習では、ボトムアップ EJB Web サービスの作成方法を学習します。
WSDL 文書は、Web サービスのデプロイ先、およびこのサービスが提供する操作を記述したものです。
以下の手順を実行すると、WSDL 文書、デプロイメント記述子ファイル、プロキシー、およびサンプルを作成できます。
- をクリックする。「Web サービス」を選択して、各種の Web サービス・ウィザードを表示します。
「Web サービス」ウィザードを選択します。「次へ」をクリックして、Web サービス・ウィザードを開始してください。
- 「Web サービス・タイプ」フィールドで、「EJB Web サービスのボトムアップ (Bottom
up EJB Web service)」を選択する。
- 「参照」をクリックしてサービス実装を選択する。
ウィンドウに、使用可能なすべてのエンタープライズ Bean のリストが表示されます。TestEJB Bean を選択します。
- サービスとクライアントを作成しこれら両方をサーバーで開始するために、サービスのスライダーを「開始」位置に移動し、
クライアントのスライダーを「テスト」位置に移動する。この操作により、適切なサービスとクライアント・コード、プロジェクト、およびルーター・モジュールが
すべて作成され、正しい EAR に関連付けられます。また、デプロイメント・コードが作成され、ターゲット・サーバーに EAR がインストールされてサービスが開始します。Web サービス・エクスプローラーは JMS 上の Web サービスをサポートしないため、サービスはテストされません。
- 次のサーバー・サイド・オプションが選択されていることを確認する。
- サーバー: WebSphere v6.1 Server
- ランタイム: IBM WebSphere JAX-RPC ランタイム環境
- サービス・プロジェクト: JMSService
- サービス EAR プロジェクト: JMSEAR
次のクライアント・サイド・オプションが選択されていることを確認します。- サーバー: WebSphere v6.1 Server
- ランタイム: IBM WebSphere JAX-RPC ランタイム環境
- クライアント・プロジェクト: JMSServiceEJBClient
- クライアント EAR プロジェクト: JMSServiceEJBClientEAR
まだ存在していないプロジェクトは、ウィザードによって作成されます。すべてのオプションを選択した場合は、次のようになります。
- Web サービス EJB 構成ページで、トランスポート方式として「JMS」を選択し、HTTP チェック・ボックスが選択されている場合は
それをクリアにする。JMSEAR の一部としてインポートした JMSServiceRouter ルーター・プロジェクトを選択する必要があります。
「次へ」をクリックします。 JMS は WS-I に準拠していないので、WS-I 準拠の設定を「無視」にしない場合、
非準拠であることを警告するエラー・メッセージが表示されます。
「詳細」をクリックすると、警告メッセージの理由が表示されます。
この警告は無視しても問題ないので、「無視」をクリックしてください。
- EJB Web サービス・バインディング構成ページで、前の演習で作成したキューおよび接続ファクトリーと一致する次の値を手動で入力する。
- JMS 宛先として キューが選択されることを確認する。このチュートリアルはトピック用には機能しません。
- 宛先 JNDI 名としての jms/ws_tutorial_queue
- JMS 接続ファクトリー としての jms/ws_tutorial_qcf
- ポート・コンポーネントの名前はターゲット・サービス名であるので、TestEJB がターゲット・サービス名として使用される。
- ActivationSpec JNDI 名としての eis/ws_tutorial_JMSRoute
完成したページは、次のようになります。
- ウィザードの「Web サービス Java Bean の識別」ページで、
ユーザーの Web サービス URI、スコープ、および生成されたファイルの名前を指定できる。
また、Web サービスに組み込まれるメソッドとエンコード・スタイルを選択したり、Web
サービス用のセキュリティーを構成したりすることもできます。
デフォルト値を受け入れるには、「次へ」
をクリックしてください。
重要: Web サービスの URI は、Web サービスにするために選択した成果物から、
ウィザードによって自動的に生成されます。デフォルトのベース URI http://tempuri.org/ は、エンティティーとの固有の関連がない URI を構成する場合に使用します。
ホスト名 tempuri は、WSDL 仕様から得られるものであり、一時 URI (temporary URI) の略語です。
URI をグローバルに固有なものにしたくない場合は、デフォルトのベース URI を使用してください。
継続的な固定エンティティーのベースとして http://tempuri.org/ を使用することはお勧めしません。
- 「Web サービス・プロキシー」ページに、プロキシー・コードの生成場所がリストされる。クライアント・プロキシーが、
ユーザーの Web サービスへのリモート・プロシージャー・コール・インターフェースを提供します。
生成したプロキシーのセキュリティーを使用可能にしないでください。
「次へ」をクリックします。
- 「Web サービス・クライアント・テスト」ページを使用して、以下のオプションを選択する。
- テスト機能としてサンプルの Web サービス・サンプル JSP を生成することを選択する。
- JSP が置かれるフォルダーを選択し、その JSP にすべてのメソッドが組み込まれていることを確認する。
- 「サーバーでテストを実行 (Run test on server)」 を選択して、サーバーが自動的に開始されるようにする。
「終了」をクリックします。
- http://localhost:9080/JMSClient/sample/TestEJB/TestClient.jsp で、
プロキシー JSP が Web ブラウザーで起動される。
メソッドを選択し、そのメソッドに値を入力して「起動」をクリックすると、
このサンプル・アプリケーションを使用して Web サービスをテストすることができます。
メソッドの結果、すなわちテキスト・フィールドに入力したストリングのエコーが、
結果ペインに表示されます。