WebSphere Application Server Version 6.1 Feature Pack for Web Services   
             オペレーティング・システム: AIX , HP-UX, i5/OS, Linux, Solaris, Windows, Windows Vista, z/OS

             目次と検索結果のパーソナライズ化
             New or updated topic for this feature pack

Web サービス・クライアントの開発とデプロイ

Web Services for Java 2 Platform, Enterprise Edition (J2EE) 仕様と、サポートされる Web サービス開発プログラミング・モデルに基づいて Web サービス・クライアントを開発できます。

このタスクについて

JAX-WS プログラミング・モデルに基づく Web サービス・クライアントの開発 新規またはこのフィーチャー・パックで更新されました
ベスト・プラクティス: WebSphere Application Server Version 6.1 Feature Pack for Web Services は、本製品の機能を拡張して、Java API for XML-Based Web Services (JAX-WS) 2.0 の プログラミング・モデルを導入できるようにします。 JAX-WS は、次世代の Web サービス・プログラミング・モデルであり、 Java API for XML-based RPC (JAX-RPC) プログラミング・モデルが提供する 基盤を提供します。戦略的 JAX-WS プログラミング・モデルを使用すると、 標準ベースの注釈モデルのサポートによって、Web サービスおよび Web クライアントの開発が 容易になります。 JAX-RPC プログラミング・モデルとアプリケーションは 引き続きサポートされますが、Web サービス・アプリケーションおよびクライアントを 新規に開発する場合は、 実装が容易な JAX-WS プログラミング・モデルをご利用ください。bprac

JAX-WS Web サービスのアクセスと呼び出しの両方ができる Web サービス・クライアントは、 Web Services for Java 2 Platform, Enterprise Edition (J2EE) 仕様に基づいて開発されます。 Feature Pack for Web Services は、Enterprise JavaBeans (EJB) クライアント、J2EE アプリケーション・クライアント、JavaServer Pages (JSP) ファイルおよびサーブレットをサポートします。 JAX-RPC 仕様に基づく Web サービス・クライアントは、 Web サービス記述言語 (WSDL) ファイルが Web Services-Interoperability (WS-I) Basic Profile に準拠している場合は、JAX-WS ベースの Web サービスを呼び出すことができます。 Feature Pack for Web Services は、管理対象外クライアントが Java 2 Platform, Enterprise Edition (J2EE) コンテナーで実行されている場合でも、管理対象外クライアントのみをサポートします。 管理対象外クライアントは、コンテナー管理サービスを使用しないクライアントです。 これらのクライアントは、JSR-109 Web サービス・クライアント・デプロイメント情報を含まない Java アーカイブ (JAR) ファイルとしてパッケージされています。 J2EE コンテナーで実行される Web サービスの管理対象外クライアントは、 サービスのインストールを管理する J2EE コンテナーに代わり、サービスのインスタンス生成を担当します。

JAX-WS Web サービス・クライアント・プログラミング・モデルは、ディスパッチ・クライアント API と、動的プロキシー・クライアント API の両方をサポートします。 ディスパッチ・クライアント API が動的クライアント・プログラミング・モデルであるのに対して、 動的プロキシー・クライアントは JAX-WS の静的クライアント・プログラミング・モデルです。 ディスパッチおよび動的プロキシー・クライアントは、 JAX-WS Web サービスの同期呼び出しと非同期呼び出しの両方を使用可能にします。 ディスパッチ・クライアント API の javax.xml.ws.Dispatch は、 XML メッセージング指向クライアントで、XML 構成体の使用を好む上級 XML 開発者向けです。 ディスパッチ API は、PAYLOAD モードまたは MESSAGE モードのいずれかでデータを送信できます。 PAYLOAD モードを使用する場合、ディスパッチ・クライアントは soap:Body の内容の提供を担当します。 さらに、JAX-WS には soap:Envelope エレメントのペイロードが含まれています。 MESSAGE モードを使用する場合、 ディスパッチ・クライアントは SOAP エンベロープ全体の提供を担当します。 動的プロキシー・クライアントは、提供されるサービス・エンドポイント・インターフェース (SEI) に基づく Web サービスを呼び出します。 JAX-WS 動的プロキシー・インスタンスは、 基本 Java Runtime Environment バージョン 5 の動的プロキシー機能を活用します。

JAX-WS プログラミング・モデルに基づいた Web サービス・クライアントを開発するには、 Web サービス・アプリケーションのニーズに最適なクライアント・モデルを決定する必要があります。 Java 抽象の代わりに XML を直接操作し、メッセージ構造またはメッセージ・ペイロード構造のいずれかを操作する場合は、ディスパッチ API を使用して 動的 Web サービス・クライアントを開発します。 Web サービス・クライアントに、サービス・エンドポイント・インターフェースに基づくサービスを動的プロキシーを使用して呼び出させる場合は、 動的プロキシー API を使用して静的 Web サービス・クライアントを開発します。 プロキシーが作成された後、クライアント・アプリケーションは、 サービス・エンドポイント・インターフェースの標準実装のように、これらのプロキシーでメソッドを呼び出すことができます。 本書では、WSDL ファイルで開始する静的 Web サービス・クライアントを開発する方法について以降で説明します。

静的または動的 JAX-WS クライアントを使用して Web サービスを非同期に呼び出すには、 実装するのがコールバック・モデルであるのか、ポーリング・モデルであるのかを決定します。 Web サービス・クライアントに対する非同期コールバックまたはポーリングの実装について詳しくは、 JAX-WS Web サービスの非同期呼び出しを参照してください。 サービスおよびクライアントに関する JAX-WS プログラミング・モデルでは、アノテーションを使用して、 ベンダー中立の方法で JAX-RPC クライアント・バインディングで提供された同一情報を表します。

JAX-RPC プログラミング・モデルに基づく Web サービス・クライアントの開発
Web サービス・クライアント・プログラミング・モデルは、 J2EE 環境での Web サービスのアクセスに対するガイドラインを提供します。 Web サービスは、Web Services for Java 2 Platform, Enterprise Edition (J2EE) 仕様、および Java API for XML-based remote procedure call (JAX-RPC) の仕様に基づいて開発できます。 アプリケーション・サーバーは、次の 2 つのタイプの 基本 JAX-RPC Web サービス・クライアントをサポートします。
  • 管理対象クライアント

    J2EE 用 Web サービスのクライアントは Java Specification Requirements (JSR) 109 により定義され、管理対象クライアントと呼ばれます。これは、これらのクライアントが J2EE コンテナー内で稼働するためです。 これらのクライアントは、エンタープライズ・アーカイブ (EAR) ファイルとしてパッケージされており、サービス要求元として動作するコンポーネントが含まれています。 こうしたコンポーネントは J2EE クライアント・アプリケーションであっても、サーブレットや JavaServer Pages (JSP) のような Web コンポーネントであっても、またはセッション Enterprise JavaBeans (EJB) であってもかまいません。 Web サービスの管理対象クライアントでは JSR 109 API とデプロイメント情報を使用して Web サービスを検索し、呼び出します。

  • 管理対象外クライアント

    J2EE コンテナー内で稼働せずに、JAX-RPC ランタイムを使用して Web サービスを呼び出す J2SE クライアントは、管理対象外クライアントと呼ばれます。 Web サービスの管理対象外クライアントは、WSDL ファイルを直接検査し、JAX-RPC API を直接使用して Web サービスの呼び出しを作成することができる、独立型の Java クライアントです。これらのクライアントは、どのようなデプロイメント情報も含まない JAR ファイルとしてパッケージされます。

プロシージャー

  1. アクセスする Web サービス用の Web サービス記述言語 (WSDL) ファイルを取得します。

    WSDL ファイルは、E メールか Uniform Resource Locator (URL) を使用してサービス・プロバイダーから 取得するか、Universal Description, Discovery and Integration (UDDI) レジストリーで検索して取得できます。

  2. WSDL ファイルからクライアント成果物を開発します。
    • 新規またはこのフィーチャー・パックで更新されました 動的プロキシー API を使用する静的 JAX-WS Web サービス・アプリケーションの場合、 wsimport コマンドを使用して、WSDL ファイルからクライアント成果物を開発します
    • JAX-RPC Web サービス・アプリケーションの場合、 wsdl2java コマンド行ツールを使用して、WSDL ファイルからクライアント・バインディングを開発します。 サービス・エンドポイント・インターフェースやインプリメンテーション、生成されるサービス・インターフェース、ibm-webservicesclient-bnd.xmi、および ibm-webservicesclient-ext.xmi デプロイメント記述子など、Web サービスを呼び出すのに必要な情報が生成されます。
  3. クライアント・インプリメンテーションを完了します。 Web サービスの呼び出しに使用されるクライアント・アプリケーション・コードを作成します。

    新規またはこのフィーチャー・パックで更新されました Feature Pack for Web Services は、この Feature Pack でサポートされる新機能および標準機能の多くを使用した、JAX-WS ベースの Web サービスを例示するサンプルを提供します。 サンプルでは、SOAP 1.1 および SOAP 1.2 環境で Web サービスの同期呼び出しと非同期呼び出しの両方を使用して単純なメッセージ交換パターンを例示しています。また、サンプルでは、JavaBeans 成果物、静的サービス・エンドポイント、およびプロキシー・ベース・クライアントの使用も例示しています。 これらのサンプルについて詳しく学習するには、 app_server_root/samples/lib/WebServicesSamples ディレクトリーにある Samples README を参照してください。 これらのサンプルを、Web サービス・プロファイルを使用して拡張されているアプリケーション・サーバーにインストールする方法を学習するには、管理コンソールを使用してサンプルをインストールするトピックを参照してください。

    サンプル・ギャラリーで入手できる WebServicesSamples アプリケーションにある JAX-RPC ベースの Web サービス・サンプルである、GetQuote クライアントを参照することができます。

  4. (オプション) Web サービス対応クライアント Java アーカイブ (JAR) ファイルを エンタープライズ・アーカイブ (EAR) ファイルにアセンブルします J2EE クライアント・コンテナーで実行される管理対象外 JAX-WS Web サービス・クライアント、 または J2EE クライアント・コンテナーで実行される管理対象 JAX-RPC Web サービス・クライアントを開発している場合は、このステップを実行してください。
  5. (オプション) Web サービス対応クライアント Web アーカイブ (WAR) ファイルをエンタープライズ・アーカイブ (EAR) ファイルにアセンブルします J2EE クライアント・コンテナーで実行される管理対象外 JAX-WS Web サービス・クライアント、 または J2EE クライアント・コンテナーで実行される管理対象 JAX-RPC Web サービス・クライアントを開発している場合は、このステップを実行してください。
  6. (オプション) クライアント・デプロイメント記述子を構成します (JAX-RPC アプリケーションのみ) 管理対象 JAX-RPC クライアントを開発している場合は、このステップを行う必要があります。
  7. (オプション) Web サービス・アプリケーションをデプロイします J2EE クライアント・コンテナーで実行される管理対象外 JAX-WS Web サービス・クライアント、 または J2EE クライアント・コンテナーで実行される管理対象 JAX-RPC Web サービス・クライアントをデプロイするには、このステップを実行してください。
  8. Web サービス対応 クライアント・アプリケーションをテストします 管理対象外クライアント JAR ファイルまたは管理対象クライアント・アプリケーション をテストできます。

結果

Web サービス・クライアント・アプリケーションの作成とテストが完了しました。

次の作業

Web サービス・アプリケーション・クライアントを開発し、そのクライアントが静的にバインドされた後、 インプリメンテーションで使用されるサービス・エンドポイントは、開発プロセス中に使用した WSDL ファイルで識別されるものとなります。 Web サービス・アプリケーションのインストール中、またはインストール後に、 サービス・エンドポイントの変更が必要になる場合があります。管理対象クライアントの場合、 エンドポイントは、管理コンソールまたは wsadmin スクリプト・ツールを使用して変更できます。 管理対象外の JAX-WS Web サービス・クライアントの場合、 エンドポイントは、クライアント・アプリケーション内から変更できます。




サブトピック
新規またはこのフィーチャー・パックで更新されました JAX-WS クライアント・プログラミング・モデル
新規またはこのフィーチャー・パックで更新されました WSDL ファイルからの JAX-WS クライアントの開発
新規またはこのフィーチャー・パックで更新されました JAX-WS API を使用した動的クライアントの開発
新規またはこのフィーチャー・パックで更新されました JAX-WS Web サービスの非同期呼び出し
JAX-RPC クライアント用 WSDL ファイルからのクライアント・バインディングの作成
WSI 基本プロファイルをサポートするための SOAP メッセージ・エンコードの変更
アセンブリー・ツールを使用した JAX-RPC Web サービス・クライアント・デプロイメント 記述子の構成
ハンドラー・クラスの JAX-RPC クライアント・デプロイメント記述子の構成
Web サービス対応クライアント JAR ファイルの EAR ファイルへのアセンブル
Web サービス対応クライアント WAR ファイルの EAR ファイルへのアセンブル
Web サービス・クライアント・アプリケーションのデプロイ
JAX-RPC に対する拡張および J2EE クライアント・プログラミング・モデルの Web サービスのインプリメント
関連概念
Web サービス
新規またはこのフィーチャー・パックで更新されました JAX-WS
関連タスク
Web サービス対応クライアントのテスト
Web サービス開発環境のセットアップ
新規またはこのフィーチャー・パックで更新されました コンソールを使用した Web サービス・サンプルのインストール
タスクの概説: Web サービス・アプリケーションのインプリメント
関連資料
Web コンテナーの最適化された通信に対する Web サービス・クライアント
Web サービスの開発に使用する成果物
Web サービス使用可能モジュール - デプロイメント記述子の設定 (ibm-webservices-bnd.xmi ファイル)
Web サービス仕様と API
タスク・トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 4:10:06 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.wsfep.multiplatform.doc/info/ae/ae/twbs_devwbsclient.html