Oracle® Fusion Middleware Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド 11g リリース1(10.3.6) B61645-04 |
|
![]() 前 |
![]() 次 |
この章では、Java API for XML-based Web services (JAX-WS) を使用して開発したWebLogic Webサービスの管理方法について説明します。
この章では、以下のトピックについて説明します。
jwsc
Antタスクを使用してWebLogic Webサービスをコンパイルおよびパッケージ化すると、Webサービスはエンタープライズ・アプリケーションの一部としてパッケージ化されます。デフォルトでは、Webサービス自体はエンタープライズ・アプリケーション内にWebアプリケーションWARファイルとしてパッケージ化されます。ただし、JWSファイルにセッションBeanが実装されている場合、WebサービスはEJB JARファイルとしてパッケージ化されます。したがって、Webサービスの基本的な管理は、標準のJava Platform, Enterprise Edition(Java EE)バージョン5アプリケーションおよびモジュールの基本的な管理と非常に似ています。標準的なタスクは次のとおりです。
Webサービスを含むエンタープライズ・アプリケーションをインストールします。
デプロイされたエンタープライズ・アプリケーションを起動および停止します。
エンタープライズ・アプリケーションと、実際のWebサービスを実装するアーカイブ・ファイルを構成します。エンタープライズ・アプリケーションの全般的な特性(デプロイメント順など)や、モジュールに固有の特性(Webアプリケーションのセッション・タイムアウト、EJBのトランザクションの種類など)を構成できます。
エンタープライズ・アプリケーションのデプロイメント・プランを作成および更新します。
エンタープライズ・アプリケーションをモニターします。
エンタープライズ・アプリケーションをテストします。
Webサービス固有の管理タスクは次のとおりです。
Webサービスのエンドポイントまたはその操作に関連付けられたWS-Policyファイルを構成します。
Webサービスに関連付けられたSOAPハンドラを表示します。
WebサービスのWSDLを表示します。
Webサービスのセキュリティ構成を作成します。
WebLogic Serverで動作するJava EEモジュールおよびアプリケーションの管理方法には、Webサービスを含め様々な方法があります。ニーズに最も適合するツールを使用してください。
WebLogic Server管理コンソールは、サーバーやクラスタにデプロイされたWebLogic Serverドメイン、1つまたは複数のWebLogic Serverインスタンス、クラスタ、およびアプリケーション(Webサービスを含む)の管理に使用するWebブラウザ形式のグラフィカル・ユーザー・インタフェースです。
各ドメインでは、1つのWebLogic Serverインスタンスが管理サーバーとして構成されます。管理サーバーではWebLogic Serverドメインを一元的に管理できます。ドメイン内の他のすべてのWebLogic Serverインスタンスは、管理対象サーバーと呼ばれます。1つのWebLogic Serverインスタンスしか含まれないドメインでは、そのサーバーが管理サーバーおよび管理対象サーバーとして機能します。管理コンソールは、管理サーバーによってホストされるWebアプリケーションであり、サポートされている任意のWebブラウザから、管理サーバーへのネットワーク・アクセスを使用してアクセスできます。
WebLogic管理コンソールを使用して、以下の作業を行うことができます。
管理コンソールを使用したWebサービスの管理の詳細は、Oracle WebLogic Server管理コンソール・ヘルプを参照してください。
次のセクションでは、次のトピックの詳細について説明します。
Webサービスおよびクライアントの監視の詳細は、Webサービスおよびクライアントの監視に関する項を参照してください。
ブラウザで管理コンソールを起動するには、次のURLを入力します。
http://host:port/console
説明:
host
は、管理サーバーが動作しているコンピュータを指します。
port
は、管理サーバーが接続リクエストをリスニングしているポート番号を指します。管理サーバーのデフォルトのポート番号は7001です。
管理コンソールの右上にある「ヘルプ」ボタンをクリックすると、管理コンソールの詳しい使い方を説明するオンライン・ヘルプが表示されます。
次の図は、管理コンソールのメイン・ウィンドウを示しています。
通常、Webサービスはエンタープライズ・アプリケーションの一部としてWebLogic Serverにデプロイされます。エンタープライズ・アプリケーションは、EARとしてアーカイブするか、展開されたディレクトリの形式とすることができます。Webサービス自体はほとんどの場合、Webアプリケーションとしてパッケージ化されます。ただし、JWSファイルにセッションBeanが実装されている場合だけは、EJBとしてパッケージ化されます。Webサービスは、アーカイブ形式(Webアプリケーションの場合はWARファイル、EJBの場合はEJB JARファイル)または展開されたディレクトリ形式にできます。
Webサービスは、必ずしもエンタープライズ・アプリケーションの一部としてインストールする必要はありません。Webサービスは、WebアプリケーションまたはEJBとしてそのままインストールすることもできます。ただし、Oracleでは、Webサービスをエンタープライズ・アプリケーションの一部としてインストールすることをお薦めしています。Webサービスの作成に使用されるWebLogic Antタスク(jwsc
)は、生成されたWebサービスを常にエンタープライズ・アプリケーションにパッケージ化します。
管理コンソールを使用してWebサービスに関するWebサービス固有の構成情報を表示および更新するには、左ペインの「デプロイメント」ノードをクリックし、右ペインに表示される「デプロイメント」表でWebサービスがパッケージ化されているエンタープライズ・アプリケーションを探します。「+
」ノードをクリックしてアプリケーションを展開すると、「Webサービス」カテゴリにアプリケーション内のWebサービスのリストが表示されます。構成を表示または更新するには、そのWebサービスの名前をクリックします。
次の図では、管理コンソールの「デプロイメント」表に、helloWorldEar
エンタープライズ・アプリケーションにパッケージ化されているHelloWorldService
Webサービスが表示されています。
デプロイ済のWebLogic Webサービスがメッセージ・レベルのセキュリティ(WS-Security仕様で定義されている暗号化およびデジタル署名)を使用するように構成されている場合、Webサービス・ランタイムは、そのWebサービスにWebサービス・セキュリティ構成が関連付けられているかどうかを判断します。このセキュリティ構成では、IDの認証にX.509証明書を使用するかどうか、パスワード・ダイジェストを使用するかどうか、暗号化にキーストアを使用するかどうかなどを指定します。1つのセキュリティ構成を多数のWebサービスに関連付けることができます。
Webサービスのセキュリティ構成はドメイン全体を対象とするため、管理コンソールでは「デプロイメント」タブではなく「domainName」>「Webサービス・セキュリティ」タブから作成します。次の図に、このタブの場所を示します。
Oracle Enterprise Manager Fusion Middleware Control (Fusion Middleware Control)は、ファームをモニターと管理するために使用するWebブラウザ形式のグラフィカル・ユーザー・インタフェースです。ファームはFusion Middleware Controlによって管理されるコンポーネントの集合です。これは、Oracle WebLogic Serverドメイン、1つまたは複数の管理対象サーバー、およびドメインにインストール化、構成および実行できるOracle Fusion Middlewareシステムのコンポーネントが含まれています。
Fusion Middleware Controlは、様々なパフォーマンス・データおよび管理機能を個別のファームに対するWebベースのホームページ、Oracle WebLogic Serverドメイン、コンポーネントおよびアプリケーションに分割しています。Fusion Middleware Controlのホームページを使用すると、Webブラウザからの重要性の高いモニター・データと最もよく使用される管理機能のすべてを簡単に検索することができます。
次の図は、Fusion Middleware Controlを示します。
図7-4 Oracle Enterprise Manager Fusion Middleware Control
Enterprise Managerを使用してWebサービスをモニターとテストする方法の詳細は、『Webサービスのためのセキュリティおよび管理者ガイド』の「WebLogic Webサービスのセキュリティと管理」を参照してください。
Fusion Middleware Controlは、Oracle Fusion Middleware製品に含まれていますが、Oracle WebLogic Serverのスタンドアロン・バージョンを購入した場合には同梱されていません。Fusion Middleware Controlの詳細については、『Oracle Application Serverの管理者ガイド』の「Oracle Enterprise Manager Fusion Middleware Control入門」を参照してください。
WebLogic Scripting Tool(WLST)は、コマンド・ライン形式のスクリプト・インタフェースで、WebLogic Serverのドメインやインスタンスと対話して構成したり、Java EEモジュールおよびアプリケーション(Webサービスを含む)を特定のWebLogic Serverインスタンスにデプロイする目的で使用します。システム管理者およびオペレータは、WLSTを使用してWebLogic Serverの構成の変更を開始、管理および永続化できます。
通常、Webサービスの管理に使用するWLSTコマンドの種類は、デプロイメント・カテゴリに分類されます。
WLSTの使用方法の詳細は、『Oracle WebLogic Scripting Tool』を参照してください。
WebLogic Serverには、構成タスクや管理タスクの多くを単一のAntビルド・スクリプトに一元化するのに使用できる様々なAntタスクが用意されています。これらのAntタスクを使用すると、以下のことが行えます。
wlserver
およびwlconfig
Antタスクを使用して、新しいWebLogic Serverドメインを作成、起動、および構成します。
wldeploy
Antタスクを使用して、新しく作成したドメインに、コンパイル済みアプリケーションをデプロイします。
Webサービスに関係のないWebLogic Antタスクに固有の情報は、『Oracle WebLogic Serverアプリケーションの開発』の「Antタスクを使用したWebLogic Serverドメインの構成と使用」および「wldeploy Antタスクのリファレンス」を参照してください。
マネージドBean (MBean)は、Java Management Extensions (JMX)インタフェースを提供するJava Beanです。JMXは、ネットワーク上のリソースをモニターおよび管理するためのJava EEソリューションです。JMXはSNMPおよび他の管理規格と同様に公開された仕様であり、一般的に用いられるモニター用製品を扱うベンダーの多くでサポートされています。
WebLogic Serverには、JMXを使用してWebLogic Serverリソースを構成、モニター、および管理するための様々なMBeanが用意されています。WebLogic Webサービスにも、Webサービスの管理タスクを実行するのに使用する専用のMBeanが複数あります。
MBeanには2種類あります。読取り専用のモニター情報の表示に使用する実行時MBeanと、デプロイ済のWebサービスの構成に使用する構成MBeanです。
構成WebサービスMBeanは次のとおりです。
WebserviceSecurityConfigurationMBean
WebserviceCredentialProviderMBean
WebserviceSecurityMBean
WebserviceSecurityTokenMBean
WebserviceTimestampMBean
WebserviceTokenHandlerMBean
実行時WebサービスMBeanは次のとおりです。
WseeRuntimeMBean
WseeHandlerRuntimeMBean
WseePortRuntimeMBean
WseeOperationRuntimeMBean
WseePolicyRuntimeMBean
JMXの詳細は、『Oracle WebLogic Server MBeanリファレンス』および『Oracle WebLogic Server JMXによるカスタム管理ユーティリティの開発』の次のセクションを参照してください:
WebLogic Server MBeanについて
JMXを使用したWebLogic Server MBeanへのアクセス
JMXを使用したドメインの構成の管理
Java EE 5では、J2EE Application Deployment仕様(JSR-88) (http://jcp.org/en/jsr/detail?id=88
を参照)により、ターゲット・アプリケーション・サーバー環境へのデプロイメント用にアプリケーションを構成するために使用できる標準APIが定義されています。
この仕様には、Java EE Deploymentアーキテクチャが記述されています。このアーキテクチャでは、ツールやアプリケーション・プログラマがあらゆるJava EEプラットフォーム製品でアプリケーションを構成およびデプロイできるようにするための規約を定義しています。この規約では、アプリケーションのデプロイメント構成とデプロイメントについて、ツールとJava EEプラットフォーム製品の間での共通モデルが定義されています。Deploymentアーキテクチャを使用すると、アプリケーションのデプロイメントがより容易に行えます。多様なJava EEプラットフォーム製品にアプリケーションをデプロイするために、さまざまなJava EEデプロイメント・ツールのすべての機能を理解する必要はありません。
詳細は、『Oracle WebLogic Serverへのアプリケーションのデプロイ』を参照してください。
クライアント・アプリケーションとWebサービスの間の接続が確立されると、理論的にはこれらの間の対話がスムーズかつ迅速になり、クライアントによるリクエストとサービスによる応答が適切なタイミングで行われます。ただし、クライアント・アプリケーションが新しいリクエストを行うのに時間がかかり、その間(最長でWebLogic Serverインスタンスの存続時間の間)、Webサービスが応答を待機する状況が発生することもあります。これは、しばしばスタック実行スレッドと呼ばれます。ある一時点においてスタック実行スレッドが大量に発生すると、サーバー全体のパフォーマンスが低下する可能性があります。
特定のWebサービスでこの状態が頻繁に発生する場合は、ワーク・マネージャを構成してそのサービスに適用することで、そのサービスにおいて作業の実行をどのように優先付けするかを指定できます。たとえば、レスポンス時間リクエスト・クラス(特定のタイプのワーク・マネージャ・コンポーネント)を構成すると、Webサービスのレスポンス時間の目標値を指定できます。
次に、デプロイメント記述子でレスポンス時間リクエスト・クラスを定義する方法の例を示します。
<work-manager> <name>responsetime_workmanager</name> <response-time-request-class> <name>my_response_time</name> <goal-ms>2000</goal-ms> </response-time-request-class> </work-manager>
Oracle WebLogic Server管理コンソール・ヘルプの「ワーク・マネージャ: レスポンス時間: 構成」で説明されるように管理コンソールを使用してレスポンス時間リクエスト・クラスを構成することができます。
ワーク・マネージャの詳細、およびWebサービスに対して構成する方法の詳細は、『Oracle WebLogic Serverサーバー環境の構成』の「ワーク・マネージャを使用したスケジューリング済作業の最適化」を参照してください。
管理コンソールまたはWLSTを使用して、呼出し回数、エラー数、フォルト数などのWebサービスおよびクライアントの実行時の情報を監視できます。
次のネーミング規則では、監視ページでWebサービスまたはクライアントを特定します。
<application_name>#<application_version>!<service_name><contextpath><url_pattern>
説明:
application_name
- Webサービスまたはクライアントを含むアプリケーションの名前。
application_version
- Webサービスまたはクライアントを含むアプリケーションのバージョン。
service_name
- Webサービスまたはクライアントの名前。
context_path
- Webサービス用に定義されるコンテキスト・パス。詳細は、『Oracle WebLogic Server WebLogic Webサービス・リファレンス』のWebLogic Webサービスのコンテキスト・パスの定義に関する項を参照してください。
url_pattern
- システム・デフォルトまたはユーザー定義によるWebサービスのURLパターン。詳細は、『Oracle WebLogic Server WebLogic Webサービス・リファレンス』のWebサービスの起動に使用するトランスポートの指定に関する項を参照してください。
管理コンソールを使用してWebサービスを監視するには、左ペインの「デプロイメント」ノードをクリックし、右ペインに表示される「デプロイメント」表でWebサービスがパッケージ化されているエンタープライズ・アプリケーションを探します。「+」ノードをクリックしてアプリケーションを展開すると、「Webサービス」カテゴリにアプリケーション内のWebサービスのリストが表示されます。Webサービスの名前をクリックして「監視」タブをクリックします。
または、左ペインの「デプロイメント」ノード、右ペインに表示される「監視」タブ、「Webサービス」タブの順にクリックします。監視統計を表示するWebサービスの名前をクリックします。
次の表に、Webサービス情報を監視するために選択できるタブを示します。ページには、Webサービスが実行されているすべてのサーバーの統計が集約されます。
注意: JAX-WS Webサービスの場合、組込みのWs-Protocol 操作では、基になるWS-*プロトコルに関する統計情報が表示されます。この情報は、アプリケーションのパフォーマンスを評価するときに役立ちます。 |
表7-1 Webサービスの監視
クリックするタブ | 表示内容 |
---|---|
「監視」>「一般」 |
合計エラー数や呼出し数など、Webサービスに関する一般的な統計。 |
「監視」>「呼出し」 |
ディスパッチ時間、実行時間および平均など、呼出しの統計。 |
「監視」>「WS-Policy」 |
Webサービスにアタッチされているポリシー。認証、認可、機密性、整合性のカテゴリに編成されています。 |
「監視」>「ポート」 |
Webサービス・エンドポイント(ポート)がリストされている表。この表には、各ポートの情報がまとめられています。ポート名をクリックすると、詳細が表示されます。 |
「監視」>「ポート」>「一般」 |
Webサービス・エンドポイントに関する一般的な統計。ページには、Webサービス・エンドポイント名、そのURI、関連付けられているWebサービス、エンタープライズ・アプリケーション、およびアプリケーション・モジュールなどの情報が表示されます。すべてのWebサービス・エンドポイント操作に関して、エラー数と呼出し数が集約されます。 |
「監視」>「ポート」>「呼出し」 |
成功、失敗、違反の数など、Webサービス・エンドポイントの呼出しの統計。 |
「監視」>「ポート」>「クラスタ・ルーティング」 |
リクエストとレスポンス、およびルーティング失敗など、Webサービス・エンドポイントのクラスタ・ルーティングの統計。 |
「監視」→「ポート」→「接続」 |
WebサービスのMakeConnection非同期エンドポイント。非同期エンドポイントごとに、受信メッセージ数、保留メッセージ数など、実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 非同期エンドポイントの名前をクリックして詳細を表示します。 |
「監視」→「ポート」→「信頼できるメッセージ」 |
Webサービスの信頼性のあるメッセージングの順序。信頼性のあるメッセージングの順序ごとに、順序の状態、移行元サーバーおよび宛先サーバーなどの実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 順序IDをクリックして詳細を表示します。 |
「監視」→「ポート」→「リクエスト」 |
Webサービスの信頼性のあるメッセージング・リクエスト。信頼性のあるメッセージング・リクエストごとに、実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 信頼できるメッセージIDをクリックして詳細を表示します。 |
「監視」>「ポート」>「WS-Policy」 |
Webサービス・エンドポイントにアタッチされているポリシーに関連した統計。認証、認可、機密性、整合性のカテゴリに編成されています。 |
「監視」>「ポート」>「操作」 |
Webサービス・エンドポイントの操作のリスト。 WebLogic Serverインスタンスが起動されてから操作が呼び出された回数、Webサービスの呼出しにかかった平均時間、レスポンスにかかった時間など、各操作に関する実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 注意: JAX-WS Webサービスの場合、組込みのWs-Protocol操作では、基になるWS-*プロトコルに関する統計情報が表示されます。たとえば、Webサービスの信頼性メッセージでは、この操作により、Webサービスまたはクライアントの代理で信頼性のあるメッセージサブシステムによって送受信される 操作の名前をクリックすると詳細が表示されます。選択した操作の一般的な統計や呼出しの統計を表示するには、それぞれ「一般」または「呼出し」タブをクリックします。 |
管理コンソールを使用してWebサービス・クライアントを監視するには、左ペインの「デプロイメント」ノードをクリックし、右ペインに表示される「デプロイメント」表でWebサービスがパッケージ化されているエンタープライズ・アプリケーションを探します。「+」ノードをクリックし、Webサービス・クライアントが存在するアプリケーション・モジュールをクリックします。「監視」タブ>「Webサービス・クライアント」タブの順にクリックします。
または、左ペインの「デプロイメント」ノード、右ペインに表示される「監視」タブ、「Webサービス・クライアント」タブの順にクリックします。監視統計を表示するWebサービス・クライアントの名前をクリックします。
表には、各Webサービス・クライアントの実行時の情報がまとめて表示されます。表でクライアント名をクリックすると詳細が表示されます。
注意: JAX-WS Webサービスの場合、Webサービスの実行時、Webサービス・エンドポイント内にシステム定義のクライアント・インスタンスを作成し、それを使用してエンドポイントに定められたプロトコル固有のメッセージを送信します。これらのクライアント・インスタンスは、自身が動作するWebサービス・エンドポイントの名前に接尾辞-SystemClient が付いた名前になります。システム定義のクライアント・インスタンスに関する監視情報を利用して、アプリケーションを評価できます。 |
表7-2 Webサービス・クライアントの監視
クリックするタブ | 表示内容 |
---|---|
「監視」>「一般」 |
エラーや呼出しの合計数など、Webサービス・クライアントに関する一般的な統計。ページには、Webサービス・クライアント名、関連付けられているエンタープライズ・アプリケーションとアプリケーション・モジュール、およびコンテキスト・ルートが表示されます。Webサービスが実行されているすべてのサーバーに関して、エラーと呼出しの統計が集約されます。 |
「監視」>「呼出し」 |
ディスパッチ時間、実行時間および平均など、呼出しの統計。 |
「監視」>「WS-Policy」 |
Webサービス・クライアントにアタッチされているポリシー。認証、認可、機密性、整合性のカテゴリに編成されています。 |
「監視」>「サーバー」 |
現在クライアントが実行されているサーバーがリストされている表。そのサーバーのWebサービス・クライアントに関する詳細を表示するには、クライアント名をクリックし、この後の手順のタブを使用します。 |
「監視」>「サーバー」>「一般」 |
Webサービス・クライアントに関する一般的な統計。ページには、Webサービス・クライアント・ポート、関連付けられているエンタープライズ・アプリケーションとアプリケーション・モジュール、およびコンテキスト・ルートなどの情報が表示されます。すべてのWebサービス・クライアント操作に関して、エラー数と呼出し数が集約されます。 |
「監視」>「サーバー」>「呼出し」 |
成功、失敗、違反の数など、Webサービス・クライアントの呼出しの統計。 |
「監視」>「サーバー」>「クラスタ・ルーティング」 |
リクエストとレスポンス、ルーティングの失敗など、Webサービス・クライアントのクラスタ・ルーティングの統計。詳細は、『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のクラスタ・ルーター・パフォーマンスの監視に関する項を参照してください。 |
「監視」→「サーバー」→「接続」 |
Webサービス・クライアントのMakeConnection非同期エンドポイント。非同期エンドポイントごとに、受信メッセージ数、保留メッセージ数など、実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 非同期エンドポイントの名前をクリックして詳細を表示します。 |
「監視」→「サーバー」→「信頼できるメッセージ」 |
Webサービス・クライアントの信頼性のあるメッセージングの順序。信頼性のあるメッセージングの順序ごとに、順序の状態、移行元サーバーおよび宛先サーバーなどの実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 非同期エンドポイントの名前をクリックして詳細を表示します。 |
「監視」>「サーバー」>「WS-Policy」 |
Webサービス・クライアントにアタッチされているポリシーに関連した統計。認証、認可、機密性、整合性のカテゴリに編成されています。 |
「監視」>「サーバー」>「操作」 |
Webサービス・クライアントの操作のリスト。レスポンス、実行およびディスパッチの平均時間、レスポンス、呼出しおよびエラーの数など、各操作に関する実行時の監視情報が表示されます。「この表のカスタマイズ」をクリックして、表に表示される情報をカスタマイズできます。 操作の名前をクリックすると詳細が表示されます。選択した操作の一般的な統計や呼出しの統計を表示するには、それぞれ「一般」または「呼出し」タブをクリックします。 |