WebSphere ランタイム環境を使用したエンタープライズ Bean (EJB) からの Web サービスの作成

前提条件:

ユーザーが作成する Web サービスは、エンタープライズ Bean に対するクライアントの働きをします。 エンタープライズ Bean は、「Web サービス」ウィザードを起動する前にデプロイする必要があります。

「Web サービス」ウィザードを使用すると、新規 Web サービスの作成、 そのサービスのデプロイメント用の構成、および Web サービスのサーバーへのデプロイを、簡単に行うことができます。 Web サービスをデプロイした後では、このウィザードに従うと、 クライアント・プロキシーおよびサンプル・アプリケーションを生成して、Web サービスをテストすることができます。 テストが完了したら、「エクスポート」ウィザードを使用して、 Web サービスを UDDI Business Registry に公開することができます。

EJB アプリケーション開発について詳しくは、「EJB ツール」を参照してください。

注: Rational Developer 製品は、ステートレス・セッション・エンタープライズ Bean からエンタープライズ Bean Web サービスの作成をサポートしています。

エンタープライズ Bean からの Web サービスの作成

  1. J2EE パースペクティブに切り替える (「ウィンドウ」 > 「パースペクティブを開く」 > 「J2EE」)。
  2. 「プロジェクト・エクスプローラー」ビューで、「EJB モジュール」を展開し、 Web サービスの生成元とするセッション Bean を選択する。
  3. ファイル」 > 「新規」 > 「その他」の順にクリックする。 各種の Web サービス・ウィザードを表示するために、「Web サービス」を選択する。 「Web サービス」ウィザードを選択する。「次へ」をクリックする。
  4. 「Web サービス」ページ: 「Web サービス・タイプ」ドロップダウン・リストから「EJB Web サービス」を選択する。  以下のオプションを選択することができます。
    • Web プロジェクトで Web サービスを開始する。 このオプションを選択しない場合は、Web サービスを手動で開始する必要があります。 このオプションを選択しないと、このページの他のオプションは使用可能になりません。
    • Web サービス・エクスプローラーを起動して、Web サービスを UDDI レジストリーに公開する。
    • Web サービスに Java™ Bean クライアント・プロキシーを生成する。 生成される Java Bean クライアント・プロキシーは、 Web サービスへのリモート・プロシージャー・コール・インターフェースを提供します。
    • Web サービスをテストする。 これにより、プロキシーの生成前に Web サービス・エクスプローラーで Web サービスをテストできます。
    • Web サービス・トラフィックを TCP/IP モニターを通して送信する。 これにより、Web サービスによって生成される SOAP トラフィックを監視し、 このトラフィックが WS-I 準拠かどうかをテストできます。
  5. 「オブジェクト選択」ページ: ウィザードを開始する前にセッション Bean を選択していた場合は、 このページのフィールドは事前に入力されているはずです。 入力されていない場合は、「EJB Bean のブラウズ」をクリックする。 開いたウィンドウで、Web サービスの生成に使用するエンタープライズ Bean を含む EAR プロジェクトを選択する。 これで、この EAR に含まれるステートレスなエンタープライズ Bean がテーブルに取り込まれます。
  6. 「サービス・デプロイメント構成」ページ: サーバーとクライアントのデプロイメント設定を指定する。
    1. 編集」をクリックし、 IBM® WebSphere® ランタイム環境を選択して、Web サービスおよび Web サービス・クライアントを実行するためのサーバーを選択する。 IBM SOAP ランタイム環境または Apache Axis 1.0 ランタイム環境を使用する場合は、 該当するタスクを参照してください。
    2. Web サービスのサービス・プロジェクトおよび EAR を選択する。 これらがまだ存在しない場合には、ウィザードで作成します。
    3. 作成された Web サービス・クライアントに必要なプロジェクトのタイプおよび名前を選択する。 既存のプロジェクトの名前を入力する場合、プロジェクト・タイプ・フィールドは、 その既存のプロジェクトのタイプ・フィールドと一致する必要があります。 まだ存在していないプロジェクトの名前を入力する場合は、 ウィザードでプロジェクトを作成できます。 Axis および SOAP ランタイム・クライアントでサポートされているプロジェクト・タイプは、 Web プロジェクトのみである点に注意してください。 クライアントを Java、EJB、 またはアプリケーション・クライアント・プロジェクトに作成する場合、 使用するクライアントに WebSphere ランタイム環境を選択する必要があります。
    4. 既存の EAR を選択するか、 Web サービス・クライアントを Web サービス EAR 以外の別の EAR に関連付ける固有の名前を入力する。 注: Web サービスと Web サービス・クライアントについて異なる EAR を選択すると、実行時エラーの発生頻度は減りますが、 より多くのシステム・リソースを使用します。
  7. 「Web サービス EJB の構成」ページ: ルーター・プロジェクト (あらかじめ存在している EJB プロジェクトでなければなりません) を選択する。 既存のサービス・エンドポイント・インターフェースがある場合は、それを選択して使用してもかまいません。 そうでない場合、「Web サービス」ウィザードによって作成されます。 トランスポート・タイプを HTTP 上の SOAP または JMS 上の SOAP から選択する。 JMS を選択した場合、必要な JMS URI プロパティーを記入する。 フィールドの詳細を表示するには、そのフィールドを選択して F1 キーを押す。
  8. 「Web サービス Java Bean 識別」ページ: このページには、 Web サービスの URI と生成された WSDL ファイルの場所がリストされます。 このページには以下のオプションがあります。
    • メソッドのパネルには、Bean に含まれるメソッドの要約が表示されます。 生成した Web サービスにそれらのメソッドを組み込むか、除去するかを選択できます。
    • Web サービスのスタイルとエンコード方式を選択する。 文書およびリテラルのみが WS-I 準拠です。
    • セキュリティーを使用可能にするように選択する。 セキュリティーを使用可能にすると、Web サービスが WS-I 準拠でなくなります。
    • カスタマイズされたパッケージから名前空間へのマッピングを定義する。
  9. 「Web サービスのパッケージから名前空間へのマッピング」ページ: 前のパネルで「パッケージから名前空間へのカスタム・マッピングを定義する」を選択した場合、 「追加」をクリックして、このパネルでカスタム・マッピングのペアを入力できます。 または、「インポート」をクリックして、 .properties ファイルからカスタム・マッピングのペアをインポートすることもできます。 .properties ファイルの内容は、 package = namespace というフォーマットでなければなりません。
  10. 「Web サービスのテスト」ページ: Web サービスのテストを選択した場合、 生成した Web サービスに対するテスト機能を選択し、「起動」をクリックする。 これにより、この Web サービスが Web サービス・エクスプローラーに開きます。 テストする操作を選択し、必要な情報を入力して「実行」をクリックする。 「状況」ペインに結果が表示されます。 Web サービスのテストを完了したら、ブラウザー・ウィンドウをクローズして、「次へ」をクリックする。
  11. プロキシーの生成を選択すると、「Web サービス・プロキシー」ページが表示されます。  クライアント・プロキシーは、リモート・プロシージャー・コール・インターフェースをご使用の Web サービスに提供します。  Java クライアント・プロキシーのフォルダーは、 /EJBWebProjectClient にデフォルト設定されます。 生成したプロキシーに関してセキュリティーを使用可能にするオプション、 またはパッケージから名前空間へのカスタム・マッピングを定義するオプションを選択することもできます。
  12. 「Web サービス・クライアントのパッケージから名前空間へのマッピング」ページ: 前のパネルで「パッケージから名前空間へのカスタム・マッピングを定義する」を選択した場合、 「追加」をクリックして、このパネルにカスタム・マッピングのペアを入力できます。 または、「インポート」をクリックして、 .properties ファイルからカスタム・マッピングのペアをインポートすることもできます。 プロパティー・ファイルの内容は、package=namespace というフォーマットでなければなりません。
  13. 生成したプロキシーのテストを選択すると、 「Web サービス・クライアントのテスト」ページが表示されます。 このページを使用して、次のオプションを選択する。
    • テスト機能を選択する。 生成したプロキシーを Universal Test Client または Web サービス・エクスプローラーでテストするか、 またはサンプル Web サービス JSP を生成することができます。
    • JSP を使用してプロキシーをテストする方法を選択した場合、 JSP を配置するフォルダーを選択し、JSP に組み込むメソッドを選択できます。
  14. Web サービスの公開を選択した場合は、「Web サービスの公開」ページを使用して、 どの UDDI レジストリーに対して公開するかを選択する。 「終了」をクリックする。 
  15. Web サービスを作成すると、選択したオプションに応じて、次の状態になります。
    • 生成したプロキシーを Web サービスの JSP によってテストすることを選択した場合、 プロキシーが http://localhost: port/EJBWebProjectClient/sampleBeanName/WebServiceName/TestClient.jsp という URL を使用して Web ブラウザーに起動されます。 このサンプル・アプリケーションを使用すると、メソッドを選択し、 そのメソッドに値を入力して「呼び出し」をクリックすることにより、Web サービスをテストできます。 メソッドの結果は、結果ペインに表示されます。
    • 生成したプロキシーを Universal Test Client によってテストする方法を選択した場合、次の URL を指定すると、 プロキシーが Web ブラウザーで起動されます: http://localhost:9080/UTC/preload?object= BeanPackage.BeanServiceProxy。 オブジェクト参照の下の「参照」ペインで、プロキシー・スタブを展開して、Web サービスのメソッドを表示します。 テストするメソッドをクリックし、パラメーター・ペインに値を入力して「呼び出し」をクリックします。 その情報の下に結果が生成されます。
    • Web サービス・エクスプローラーの使用による Web サービスのテストを選択すると、エクスプローラーが開きます。 テストする操作を選択し、必要な情報を入力して「実行」をクリックする。 「状況」ペインに結果が表示されます。
    • Web サービスの公開を選択した場合、Web サービス・エクスプローラーが起動し、 IBM UDDI テスト・レジストリーに Web サービスを公開するために必要なページが表示されます。 「Web サービスの公開」 の指示に従って、このタスクを完了します。

EJB について詳しくは、EJB アプリケーション開発の文書を参照してください。 EJB から Web サービスを作成する例については、チュートリアル素材集およびサンプル素材集を参照してください。

ご利用条件 | フィードバック
(C) Copyright IBM Corporation 1999, 2004. All Rights Reserved. (C) Copyright IBM Japan 2005