ヘッダーをスキップ
Oracle Containers for J2EEリソース・アダプタ管理者ガイド
10g(10.1.3.5.0)
B56028-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

2 概要: リソース・アダプタの管理

この章ではリソース・アダプタの管理の方法の概要について次の内容を説明します。

OC4J管理の概要

リソース・アダプタの管理について説明する前に、次の分野におけるOC4Jの機能について概説します。

OC4Jのデプロイおよび構成機能

OC4JはJ2EE環境におけるアプリケーションのデプロイおよび管理のために、次の標準をサポートしています。

  • Java Management Extensions(JMX)1.2の仕様により、J2EE環境においてサービスやアプリケーションなどのリソースを管理するための標準的なインタフェースが作成できます。JMXのOC4J実装により、OC4Jサーバーおよびその中で実行するアプリケーションを完全に管理するために使用するユーザー・インタフェースが提供されます。

  • Java 2 Platform, Enterprise Edition Management Specification(JSR-77)により、J2EE環境でのアプリケーションの実行時の管理用に、MBean(マネージドBean)と呼ばれるオブジェクトを作成できます。OC4Jでは、Oracle Enterprise Manager 10gのシステムMBeanブラウザを使用してMBeanに直接アクセスできます。しかしそのプロパティの多くはEnterprise Managerの他の機能によって、よりわかりやすい方法で公開されています。これらのインタフェースは、「リソース・アダプタMBeanおよび管理の概要」に要約されています。

  • Java 2 Enterprise Edition Deployment API Specification(JSR-88)は、J2EE準拠の環境でのJ2EEアプリケーションおよびモジュールの構成およびデプロイ用の標準的なAPIを規定しています。OC4J実装は、コンポーネントをOC4Jにデプロイするために必要なOC4J固有の構成データを含むデプロイ・プランを作成したり編集したりする機能を持っています。

OC4Jデプロイ・プラン・エディタおよびシステムMBeanブラウザは、Oracle Enterprise Manager 10g Application Server Control(Application Server Control)で公開されます。このユーザー・インタフェースがApplication Server Controlコンソールです。また便宜上、リソース・アダプタに関連するすべての重要なプロパティなどの、MBeanプロパティに対応する多くのパラメータは、Application Server Controlコンソールの他のページで公開されます。

通常、Application Server Controlコンソールは、実行時の管理や再構成だけでなく、デプロイ・プラン・エディタを使用してOC4Jアプリケーションを構成しデプロイするために使用されます。OC4JのMBeanやOC4J固有のXML構成ファイルは、可能なかぎり直接操作しないでください。Application Server Controlコンソールを使用するときに、XMLファイルはOC4Jによって自動的に更新されます。ただし、oc4j-ra.xmloc4j-connectors.xmlのプロパティがApplication Server Controlコンソールで公開されないという状況がデプロイ中に起こる場合があります。このような場合は、デプロイ用にXMLファイルを直接作成することが唯一の方法です。

OC4Jのデプロイ、構成および管理の概要は、『Oracle Containers for J2EEデプロイメント・ガイド』および『Oracle Containers for J2EE構成および管理ガイド』を参照してください。Application Server Controlの詳細は、『Oracle Application Server管理者ガイド』の管理ツールの概要を参照してください。


注意:

  • リソース・アダプタ使用中の特定の構成設定の変更における本質的に曖昧なセマンティックスのため、Application Server Controlコンソールからの更新などのMBeanを使用した更新のいくつかは、リソース・アダプタが再起動されるまで有効になりません。Application Server Controlコンソールでそのような変更を行った場合、再起動するまで新しい値は有効にならなくても、OC4Jによりコンソールおよび対応するXMLファイルはすぐに更新されます。

  • アクティブなエンドポイントがあるリソース・アダプタを事前に停止せずに再デプロイすると、アクティブなエンドポイントが原因で、OC4JによってDeployerException例外がスローされます。リソース・アダプタを停止してから再デプロイするようにしてください。


OC4JおよびOracle Application Server管理ツール

Oracle Application ServerまたはスタンドアロンのOC4J環境のどちらかにおいて、「OC4Jのデプロイおよび構成機能」で紹介したApplication Server Controlを使用してOC4J内のJ2EEアプリケーションおよびリソース・アダプタをデプロイし構成できます。これは一般的にアプリケーションの管理で優先される方法であるため、このドキュメントで重視します。OC4Jのホームページからアクセスできる「アプリケーション」タブにあるApplication Server Controlコンソールのデプロイ機能によってアプリケーションをデプロイできます。リソース・アダプタ構成用のApplication Server Controlコンソールのページについては、このドキュメントで説明されています。

スタンドアロンOC4Jの場合、J2EEアプリケーションのデプロイおよびバインド用に、コマンドラインのOC4Jのadmin_client.jarツールを使用することも可能です。

あるいはアプリケーション開発にOracle JDeveloperツールを使用している場合、それを使用することにより、そのアプリケーションとあらゆる種類のリソース・アダプタもデプロイできます。

また状況によって、特に開発中に、OC4J固有のXMLファイルを直接操作してOC4Jアプリケーションの外観を構成する必要がある場合があります。このため、これらのファイル用の参考資料はOC4Jのドキュメントのセットに含まれています。OC4J固有のリソース・アダプタ構成ファイルであるoc4j-connectors.xmlおよびoc4j-ra.xmlの要素と属性は、付録A「OC4Jリソース・アダプタ構成ファイル」に記載されています。

アプリケーションをデプロイし管理するための、Application Server Controlコンソールまたはadmin_client.jarツールの使用方法についての概要は、『Oracle Containers for J2EEデプロイメント・ガイド』および『Oracle Containers for J2EE構成および管理ガイド』を参照してください。Application Server Controlコンソール用には豊富なオンライン・ヘルプもあります。

リソース・アダプタ用のApplication Server Controlページの概要

Application Server Controlコンソールは、アプリケーションで使用されるOC4JインスタンスやWebサービスを管理するだけでなく、アプリケーションのデプロイ、構成および監視のためにWebベースのユーザー・インタフェースを提供します。OC4Jのソフトウェアをインストールするときに(スタンドアロン環境またはOracle Application Server環境のどちらかで)、インストールされ、あらかじめ構成され、自動的に起動されます。またOC4Jインスタンスが使用しているポートにバインドされます。通常、Oracle Application Server環境ではポートは7777です。一般にスタンドアロン環境ではポートは8888です。コンソールへのアクセスには適切なホストのこのポートを使用してください。

http://hostname:8888

このインスタンスの使用方法の詳細は、Application Server Controlコンソールとともに提供されるオンライン・ヘルプを参照してください。

コンソールは、アプリケーション、管理、パフォーマンスおよびWebサービスという機能ごとに編成されています。アプリケーション分野を通してリソース・アダプタを管理できます。

このドキュメントにおけるリソース・アダプタの構成手順は、「リソース・アダプタ」ホームページから始まります。

この項ではこの後、次の内容について説明します。

「リソース・アダプタ」ホームページへの移動方法

スタンドアロン・リソース・アダプタ用のホームページへは次のようにして移動します。

  1. OC4Jのホームページから「アプリケーション」タブを選択します。

  2. スタンドアロン・リソース・アダプタが表示されます。

  3. 該当するリソース・アダプタを選択します。

アプリケーションとともにデプロイされたリソース・アダプタ用のホームページには次のようにして移動します。

  1. OC4Jのホームページから「アプリケーション」タブを選択します。

  2. アプリケーションが表示されます。

  3. 目的のアプリケーションを選択します。

  4. その結果表示されるアプリケーション・ホームページから、「モジュール」の下で該当するリソース・アダプタ・モジュールを選択します。

「リソース・アダプタ」ホームページの内容

表2-1では、ホームページに示されるリソース・アダプタの一般的なプロパティについてまとめ、それらがどのXMLエンティティに対応、または関連しているかを示します。

表2-1 「リソース・アダプタ」ホームページに表示される一般的なプロパティ

Application Server Controlプロパティ 対応または関係するXMLエンティティ 説明

名前

oc4j-connectors.xmlにおける<connector>要素のname属性

スタンドアロン・リソース・アダプタ用のデプロイ(Application Server Controlコンソールのデプロイ・ページなどを使用)中に決定されたリソース・アダプタの名前です。EARファイル内にデプロイされたリソース・アダプタの場合、.rar拡張子のないRARファイルの名前に準じます。

ステータス

n/a

リソース・アダプタが現在実行中であるかを示します。これはOC4Jによる実行時のポーリングによります。

パス

oc4j-connectors.xmlにおける<connector>要素のpath属性

RARファイルがデプロイされたディレクトリのパスです。

説明

ra.xmlにおける適切な<connector>要素の<description>サブ要素

リソース・アダプタの任意の説明です。

ベンダー名

ra.xmlにおける<connector>要素の<vendor-name>サブ要素

リソース・アダプタを提供するベンダーです。

EISタイプ

ra.xmlにおける<connector>要素の<eis-type>サブ要素

リソース・アダプタの設計の対象となるEISです(たとえば、OracleAS JMS)。

アダプタ・バージョン

ra.xmlにおける<connector>要素の<version>サブ要素

ベンダーによって指定されたリソース・アダプタのバージョン番号です。

JCA仕様のバージョン

ra.xmlにおける<connector>要素の<resourceadapter-version>サブ要素

リソース・アダプタによってサポートされているJ2EE仕様のレベルです(1.0または1.5)。

必要なライセンス

ra.xmlにおける<connector>要素のサブ要素である<license>要素の<license-required>サブ要素

リソース・アダプタにライセンスが必要であるかどうかを示すブール値です。(オプションで、ライセンス条項を説明するために<license><description>サブ要素があります。)


表2-2では、ホームページに示されるリソース・アダプタのサービス規約プロパティについてまとめ、それがどのXMLエンティティに対応、または関連しているかを示します。

表2-2 「リソース・アダプタ」ホームページに表示されるサービス規約プロパティ

Application Server Controlプロパティ 対応または関係するXMLエンティティ 説明

EISとの通信

ra.xmlにおける適切な<resourceadapter>要素の<inbound-resourceadapter>および<outbound-resourceadapter>サブ要素

注意: J2CA 1.5のサブ要素です。

<inbound-resourceadapter>サブ要素だけがある場合はインバウンドを意味し、<outbound-resourceadapter>サブ要素だけがある場合はアウトバウンドを意味し、両方がある場合は双方向を意味します。

注意: J2CA 1.0の場合、アウトバウンド通信だけが可能です。

接続定義

ra.xmlにおける適切な<outbound-resourceadapter>要素の<connection-definition>サブ要素

注意: J2CA 1.5の要素です。

このリソース・アダプタ用の接続定義の数(<connection-definition>要素の数)を意味します。

注意: J2CA 1.0の場合、それぞれのリソース・アダプタ用に1つだけの接続定義があります。

トランザクション・サポート

ra.xmlにおける適切な<outbound-resourceadapter>要素の<transaction-support>サブ要素

注意: J2CA 1.0では<transaction-support><resourceadapter>のサブ要素です。

リソース・アダプタによってサポートされるトランザクションのレベルを意味します。すなわちNoTransactionLocalTransactionまたはグローバル・トランザクションを意味するXATransactionです。「トランザクション・サポートのレベルに合せたリソース・アダプタの構成」を参照してください。

認証メカニズム

ra.xmlにおける適切な<outbound-resourceadapter>要素の<authentication-mechanism>サブ要素

注意: J2CA 1.0では<authentication-mechanism><resourceadapter>のサブ要素です。

BasicPasswordなどのリソース・アダプタによってサポートされる認証メカニズムのタイプを意味します。(サインオン用のユーザー名とパスワードの典型的な使用方法です。)

再認証サポート

ra.xmlにおける適切な<outbound-resourceadapter>要素の<reauthentication-support>サブ要素

注意: J2CA 1.0では<reauthentication-support><resourceadapter>のサブ要素です。

既存の管理接続のインスタンスの再認証をリソース・アダプタがサポートするかどうかを示すブール値です。


表2-3では、ホームページに示されるメッセージ・リスナー・タイプについて説明し、対応するXMLエンティティを示します。ここで述べられている要素はra.xmlファイルにおける<inbound-resourceadapter>要素の<messageadapter>サブ要素の下の定義にあります。

表2-3 「リソース・アダプタ」ホームページに表示されるメッセージ・リスナー・タイプ

Application Server Controlプロパティ 対応または関係するXMLエンティティ 説明

メッセージ・リスナー・タイプ(リソース・アダプタによってサポートされるそれぞれのメッセージ・リスナー用のエンティティ)

ra.xmlにおける<messagelistener><messagelistener-type>サブ要素(サポートされるそれぞれのメッセージ・リスナー用に1つの<messagelistener>要素があります)

javax.jms.MessageListenerのようなサポートされるメッセージ・リスナーのJavaのタイプです。

注意: 複数のメッセージ・リスナー・タイプが1つのリソース・アダプタによってサポートされます。


「リソース・アダプタ」ホームページからアクセスできるページの概要

リソース・アダプタ・ホームページから次のものにアクセスできます。

  • 「コネクション・ファクトリ」タブ: 特定のJNDIロケーションを参照しながらコネクション・ファクトリを編集、作成、削除または監視します。あるいは共有接続プールを編集、作成、削除または監視します。

    • 「コネクション・ファクトリの作成」ページ: コネクション・ファクトリ・インタフェースを選択し、JNDIロケーション、接続プーリングがあればそのモード、および新しいコネクション・ファクトリ用のプロパティ設定の構成を指定します。

    • 「コネクション・ファクトリの編集」ページ: コネクション・ファクトリ用の構成プロパティ、接続プーリング、セキュリティおよびその他のオプションを設定します。

      • 「一般」タブ: ファクトリからの接続のための構成プロパティを表示します。プライベート接続プーリングを持ったコネクション・ファクトリの場合、このタブから「プライベート接続プール」ページにリンクし、プールの中の接続の最小数および最大数などのパラメータを編集します。

      • 「セキュリティ」タブ: EISへの宣言的なコンテナ管理のサインオン用のプリンシパル・マッピング・エントリを設定します。

      • 「オプション」タブ: ログ・ファイルへの目的のパスを指定します。またはトランザクション・リカバリのためにEISにサインオンするユーザーおよびパスワードを設定します。

    • 「コネクション・ファクトリ・メトリック」ページ: 接続を監視するためのコネクション・ファクトリおよび接続プール・目トリックを表示します。

    • 「共有接続プールの作成」ページ: 新しい接続プール用の接続プーリング・パラメータ(プール内の接続の最小数や最大数など)を設定します。

    • 「共有接続プール」ページ: 既存の接続プール用の接続プーリング・パラメータを変更します。

  • 「管理対象オブジェクト」タブ: 管理対象オブジェクトの作成、編集または削除を行います。

    • 「管理対象オブジェクトの作成」ページ: JNDIロケーションを指定し、新しい管理対象オブジェクト用の構成プロパティを設定します。

    • 「管理対象オブジェクト」ページ: 既存の管理対象オブジェクト用の構成プロパティを表示します。

  • 「管理」タブ: リソース・アダプタ・インスタンス用の構成プロパティを設定します。またはデプロイメント・ディスクリプタ(ra.xml)や固有のデプロイメント・ディスクリプタを表示します。固有のデプロイメント・ディスクリプタの表示は次のようになります。

    • リソース・アダプタ用のoc4j-connectors.xml<connector>要素

    • リソース・アダプタ用のoc4j-ra.xmlファイル

これらのページ、およびこれらのページでできることについては、このドキュメントの後の方でより詳細に説明します。詳細は、Application Server Controlオンライン・ヘルプの「リソース・アダプタ」ホームページ、「リソース・アダプタ」の「コネクション・ファクトリ」ページ、「リソース・アダプタ」の「管理対象オブジェクト」ページおよび「リソース・アダプタ」の「管理」ページそれぞれに関する状況依存トピックを参照してください。

一般的なリソース・アダプタの管理機能

この項ではリソース・アダプタ用の一般的な構成機能について、次の内容を説明します。

リソース・アダプタJavaBeanの設定プロパティ

リソース・アダプタ・インスタンスはJavaBeanであり、ra.xmlファイルの設定に従って構成可能なプロパティを持っています。次の例を考えてみます。

<connector ... >
   <resourceadapter>
      <resourceadapter-class>
         oracle.j2ee.ra.jms.generic.JMSResourceAdapter
      </resourceadapter-class>
      <config-property>
         <config-property-name>lookupMethod</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         <config-property-value>resourceProvider</config-property-value>
      </config-property>
      <config-property>
         <config-property-name>resourceProviderName</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         <config-property-value>MQSeries</config-property-value>
      </config-property>
      ...
   </resourceadapter>
</connector>

これはlookupMethodおよびresourceProviderNameがリソース・アダプタJavaBeanのプロパティであることを示しています。

次のようにApplication Server Controlコンソールを使用して、リソース・アダプタ構成プロパティ用に新しい値を指定できます。

  1. 適切な「リソース・アダプタ」ホームページから「管理」タブを選択します。

  2. 「管理」タブから「構成プロパティ」タスクに移動します。

  3. 表示された「構成プロパティ」ページには特定のリソース・アダプタ用の構成プロパティが一覧表示されます。それぞれのプロパティについて、ra.xmlからアセンブルされた値が一覧表示され、oc4j-connectors.xmlから現在デプロイ済の値が一覧表示されます。前述のra.xmlの例では、lookupMethodおよびresourceProviderNameが一覧表示されます。

  4. 目的の新しいデプロイ済の値を指定します。たとえば前述の例にあるように、resourceProviderNameMQSeriesのアセンブルされた値とともに一覧表示されていて、それをMQSeries2に変更するとします。単純にこれを「デプロイ済の値」フィールドに指定します。

  5. 変更を適用します。

前述の手順で要約したページの詳細は、Application Server Controlオンライン・ヘルプの「リソース・アダプタ」の「管理」ページおよび「リソース・アダプタ」の「構成プロパティ」ページに関する状況依存トピックを参照してください。


注意:

Application Server Controlで構成プロパティを編集できますが、リソース・アダプタは動的更新をサポートしていない場合があります。このような状況において構成プロパティを編集しようとすると、例外がスローされます。

表2-4に要約されるように、新しい(デプロイ済の)値は、適切なnameおよびvalue属性とともにoc4j-connectors.xmlファイルの<config-property>要素に反映されます。<config-property>要素には異なった用途があることに注意してください。この場合、<config-property>はリソース・アダプタ用の<connector>要素のサブ要素であり、それはoc4j-connectors.xmlのトップレベルの<oc4j-connectors>要素のサブ要素です。

表2-4 リソース・アダプタJavaBean構成プロパティ

Application Server Controlプロパティ 対応するXMLエンティティ 説明

リソース・アダプタに適用され、構成プロパティに示される名前、タイプ、アセンブルされた値およびデプロイ済の値(名前、タイプおよびアセンブルされた値はra.xmlによります。)

名前およびデプロイ済の値に対する<config-property>nameおよびvalue属性

これらの属性はリソース・アダプタJavaBeanのプロパティの名前および目的のデプロイ済の値に対応します。


リソース・アダプタのネイティブ・ライブラリの使用の構成

リソース・アダプタとともにネイティブ・ライブラリをデプロイして、OC4Jにその場所を示すことができます。一般にネイティブ・ライブラリは、たとえば、Windows環境においては.dllファイルであり、Solaris環境においては.soファイルです。

ネイティブ・ライブラリの場所は、Application Server Controlコンソールから設定することはできません。そのかわり、oc4j-connectors.xmlファイルの<native-library>要素を使用してライブラリへの相対的な場所を指定します。その場合、相対パスはリソース・アダプタ用のデプロイRARファイルの中のライブラリのパスによって異なります。

次に示すRARファイルの場合、パスは./になります。

META-INF/ra.xml
META-INF/oc4j-ra.xml
howto.html
images/icon.jpg
ra.jar
cci.jar
mylib.dll

そのため構成は次のようになります。

<native-library path="./mylib.dll" />

また、このRARファイルの場合、パスは/mydir/になります。

META-INF/ra.xml
META-INF/oc4j-ra.xml
mydir/mylib.dll
howto.html
images/icon.jpg
ra.jar
cci.jar

構成は次のようになります。

<native-library path="mydir/mylib.dll" />

<native-library>要素は「<native-library>」でも説明されています。

リソース・アダプタMBeanおよび管理の概要

標準準拠のMBeanはOC4Jランタイム構成で機能します。次の項では、概要を示します。

OC4J MBean管理の概要

OC4JのJMX仕様のサポートにより、J2EE環境においてリソース・アダプタに関連するものを含むリソースの動的管理用に標準インタフェースが作成できます。JMXのOC4J実装により、JMXクライアントであるシステムMBeanブラウザが提供され、それによってOC4Jとともに提供されるMBeanを介してOC4Jインスタンスを管理できます。

MBeanはJMXの管理可能なリソースを表すJavaオブジェクトです。アプリケーションやリソース・アダプタといったOC4J内の管理可能なリソースは、適切なMBeanのインスタンスを通して管理されます。OC4Jとともに提供されるそれぞれのMBeanは、Application Server ControlコンソールのシステムMBeanブラウザからアクセスできる管理インタフェースを公開します。MBeanの属性を設定したり、MBeanのメソッドをコールするための操作を実行したり、エラーや特定のイベントの通知をサブスクライブしたり、実行統計を表示したりできます。


注意:

この情報は参照用に提供されていますが、重要なリソース・アダプタの構成設定はApplication Server Controlコンソールの他の機能によってよりわかりやすい方法で公開されています。特定のタスクについての手順は、このドキュメントで説明しています。

OC4Jのホームページからブラウザにアクセスするには、「管理」タブを選択し、タスクのリストの下から、JMXタスクであるシステムMBeanブラウザに移動します。ブラウザから次のことができます。

  • 左側のフレームで該当するMBeanを選択します。

  • 右側のフレームの「属性」タブを使用して属性を表示または変更します。設定可能な属性には、新しい値を入力できるフィールドがあります。変更を適用します。

  • 右側のフレームの「操作」タブを使用してMBeanでメソッドを起動します。該当する操作を選択します。操作ウィンドウで、指定したパラメータ設定で使用できます。

  • 右側のフレームの「通知」タブ(該当する場合)を使用して通知にサブスクライブします。通知を行う各項目を選択し、変更を適用します。

  • 右側のフレームの「統計」タブ(該当する場合)を使用して実行統計を表示します。

いつ変更が有効になるかは、MBeanとその属性によって様々であることに注意してください。実行時モデルの場合、変更はすぐに有効になります。構成モデルの場合、変更のいくつかはリソースが再起動するときに有効になり、他のものはアプリケーションが再起動するときに、さらに他のものはOC4Jが再起動するときに有効になります。変更が持続するかどうかについても様々です。

詳細は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。システムMBeanブラウザ自体もまたMBeanに関する情報を提供しています。

OC4Jリソース・アダプタMBeanの概要

OC4Jはそれぞれのリソース・アダプタ用にMBeanのセットを公開し、アプリケーションの実行中の管理をサポートします。OC4JのMBeanのいくつかはJ2EEの管理仕様をサポートするために必要ですが、拡張機能を提供する場合があります。他のOC4JのMBeanはモデルのOracle拡張機能です。

表2-5では、JSR-77によってアプリケーション・サーバーに要求されるリソース・アダプタと関連する、MBeanのOC4J実装を要約します。これらの実装はoracle.oc4j.admin.management.mbeansパッケージの中にあります。


注意:

  • 次の表の中でアスタリスク(**)が2つ付いているMBeanは、そのプロパティの変更がリソース・アダプタあるいはOC4J(通常はリソース・アダプタ)が再起動するまで有効にならないものです。

  • MBeanはシステムMBeanブラウザで自己記述的で、その属性、操作および通知(該当する場合)の記述を提供します。


表2-5 リソース・アダプタの必須システムMBean

MBean 説明

ResourceAdapterModule **

リソース・アダプタ・アーカイブ(RARファイル)全体を識別し、アーカイブ全体の(場合によっては複数のリソース・アダプタ全体の)プロパティの構成を可能にします。

ResourceAdapter **

アーカイブ全体で1つのリソース・アダプタを識別します。

JCAResource

OC4J内にデプロイされたすべてのコンポーネントが使用できるリソース・アダプタから1つの構成済のリソースを識別します。

JCAConnectionFactory **

リソース内の構成済のコネクション・ファクトリ・インスタンスを識別します。

JCAManagedConnectionFactory

コネクション・ファクトリ・インスタンスと関連する管理コネクション・ファクトリを識別します。


表2-6では、Oracleの拡張機能であるリソース・アダプタに関連するOC4JのMBeanを要約します。これらのMBean実装もまたoracle.oc4j.admin.management.mbeansパッケージの中にあります。

表2-6 リソース・アダプタの追加のシステムMBean

MBean 説明

WorkManagerResource

リソースと関連するワーク・マネージャを識別します。

JCAEndpointActivation

このリソースを使用するためにアクティブ化されていたエンドポイントを識別します。

JCAMessageEndpointFactory

エンドポイントのアクティブ化と関連付けられたエンドポイント・ファクトリを識別します。

JCAAdminObject

このリソース・アダプタによってサポートされる管理対象オブジェクトを識別します。

JCAAdminObjectInstance **

このリソース・アダプタによってサポートされる管理対象オブジェクトの1つの構成済のインスタンスを識別します。

JCASharedConnectionPool

このリソース・アダプタ用に定義された共有接続プールの1つを識別します。

JCAConnectionPool

このリソース・アダプタ用に定義されたプライベート接続プールの1つを識別します。

JCAConnectionDefinition

このリソース・アダプタとともにパッケージ化された接続定義の1つを識別します。


リソース・アダプタのライフサイクル: 起動と停止

リソース・アダプタがデプロイされるとき、またはOC4Jのようなアプリケーション・サーバーが起動されるときに、アプリケーション・サーバーはリソース・アダプタのインスタンスをブートストラップ(ロードおよび初期化)するメカニズムを必要とします。リソース・アダプタがアンデプロイまたは停止されるとき、またはアプリケーション・サーバーが停止されるときに、アプリケーション・サーバーはリソース・アダプタに対し、アンロードされる前に機能を停止するように通知するメカニズムを必要とします。これらの機能的な面はJ2CAのライフサイクル管理規約で説明されています。

この項では、この規約の重要な部分を紹介し、またリソース・アダプタを手動で停止する方法を説明します。ここでは次の内容について説明します。

ライフサイクル管理モデルの主要なAPI

リソース・アダプタはリソース・アダプタ・プロバイダによって、次のSPIインタフェースを実装するJavaBeanクラスとして実装されます。

  • javax.resource.spi.ResourceAdapter

リソース・アダプタ・プロバイダは、全体的なリソース・アダプタのデプロイの一部としてJavaBeanクラスをデプロイし、また標準的なra.xmlデプロイメント・ディスクリプタの中のResourceAdapterインスタンス用の構成を指定します。

ResourceAdapterインスタンスは、アプリケーション・サーバーによってリソース・アダプタの起動と停止のためにそれぞれコールされる次のようなメソッドを指定します。

  • void start(javax.resource.spi.BootstrapContext ctx)

  • void stop()

BootstrapContextインタフェースはアプリケーション・サーバーによって実装され、特定のアプリケーション・サーバー・リソースにアクセスできるようにするメソッドを持ちます。

リソース・アダプタの起動プロセスについて

リソース・アダプタの起動はOC4Jによって開始され、次のような場合に発生します。

  • リソース・アダプタがOC4Jにデプロイされるとき

  • リソース・アダプタがデプロイされた後にOC4Jが再起動されるとき

OC4Jは次の手順でリソース・アダプタを起動します。

  1. このリソース・アダプタ用にResourceAdapterJavaBeanをインスタンス化し、そのプロパティをra.xmlファイル内の仕様に従って構成します。

  2. ResourceAdapterインスタンスに渡すBootstrapContextインスタンスを作成します。

  3. ResourceAdapterJavaBeanのstart()メソッドをコールして、BootstrapContextインスタンスを渡します。

  4. 初期化し、任意のコネクション・ファクトリをバインドします。(コネクション・ファクトリの定義は、「EIS接続の取得の方法」を参照してください。)

  5. 初期化し、任意の管理対象オブジェクトをバインドします。(管理対象オブジェクトの定義は、「管理対象オブジェクトについて」を参照してください。)

start()メソッドはそれによってリソース・アダプタが初期化のプロシージャを実行し、EISとの通信を確立し、場合によってはEISのサービスを開始することができる手段です。初期化のプロシージャはたとえば、スレッドの作成、ネットワーク・エンドポイントの設定、またはリソース・アダプタに特有な(管理オブジェクトのような)オブジェクトの作成を含みます。

BootstrapContextインスタンスは、java.util.Timerインスタンスを将来のタスクのスケジュールのために返したり、javax.resource.spi.work.WorkManagerインスタンスを作業ユニットの管理のために返したり、javax.resource.spi.XATerminatorインスタンスをトランザクションの完了またはリカバリ用に返したりすることによって、アプリケーション・サーバー・リソースへのアクセスを与えるメソッドを持っています。start()メソッドはワーク・マネージャを使用して作業ユニットを実行のために発行したり、XA終端文字を使用してインポートしたトランザクションを完了したりします。(ワーク管理とトランザクションの流れの詳細は、「ワーク管理規約の概略」および「インバウンド通信用の関連する規約の概要」を参照してください。)


注意:

  • 前述の説明はJ2CA 1.5環境を仮定しています。コネクション・ファクトリ関連の手順だけはJ2CA 1.0環境に相当します。

  • oc4j-connectors.xmlファイルの<start-order>要素は、アプリケーション内でOC4Jによってリソース・アダプタがロードされ開始される順番を決定し、また該当する場合はスタンドアロン・リソース・アダプタがロードされ開始される順番を決定します。「<start-order>」を参照してください。

  • start()メソッドが例外をスローする場合、OC4Jは起動プロセスが失敗したと判断し、同じResourceAdapterインスタンスのstart()メソッドをそれ以上コールすることはありません。そのかわり、リソース・アダプタをもう一度開始する場合には、新しいResourceAdapterインスタンスを作成します。

  • OC4JのResourceAdapter MBeanはリソース・アダプタを開始、停止あるいは再起動するためのstart()stop()およびrestart()メソッドを含んではいますが、リソース・アダプタのJavaBeanの開始および停止機能を使用します。(OC4JのMBeanの詳細は、「リソース・アダプタMBeanおよび管理の概要」を参照してください。)


リソース・アダプタの停止プロセスについて

リソース・アダプタの停止はOC4Jによって開始され、次のような場合に発生します。

リソース・アダプタの停止には次の2つのフェーズのプロセスがあります。

  1. 最初のフェーズにおいて、OC4Jはリソース・アダプタに依存するすべてのアプリケーションと操作が、リソース・アダプタの停止前に終了していることを保証する必要があります。これには次のことが含まれています。

    • このリソース・アダプタを通してメッセージを受信するあらゆるメッセージ・エンドポイントの非アクティブ化

    • このリソース・アダプタを使用するあらゆるアプリケーションの停止

    最初のフェーズは、アプリケーションのスレッドがリソース・アダプタのインスタンスをすでに使用していないこと、およびトランザクションのアクティビティを含むすべてのアプリケーションのアクティビティが完了していることを保証します。

  2. 第1のフェーズが完了した後にのみ開始される第2のフェーズにおいては、OC4Jはリソース・アダプタに機能の停止を通知するためにResourceAdapterJavaBeanのstop()メソッドをコールします。これは安全なアンロードを可能にします。

    stop()メソッドがコールされると、リソース・アダプタは必要なクリーンアップを行い、次に順序正しく停止します。これには次のことが含まれています。

    • ネットワークのエンドポイントのクローズ

    • スレッドの放棄

    • アクティブな作業ユニットの解放

    • コミット・フェーズにあるあらゆるトランザクションの完了の許可

    • あらゆるキャッシュ・データのEISへのフラッシュ

    • コネクション・ファクトリのアンバインドとクリーンアップ

    • あらゆる管理対象オブジェクトのアンバインドとクリーンアップ


注意:

  • 前述の説明はJ2CA 1.5環境を仮定しています。J2CA 1.0環境において該当するものは、コネクション・ファクトリのアンバインドおよびクリーンアップのみです。

  • 停止の手順の後に、キャッシュされたコネクション・ファクトリや管理対象オブジェクトへのハンドルを保持しているアプリケーションがある場合は予期しない動作を招く可能性があります。

  • リソース・アダプタを停止する際、依存するアプリケーションがOC4Jによって常に停止されるとはかぎりません。すべてのアプリケーションのアクティビティが必ず完了するよう、リソース・アダプタを使用しているすべてのアプリケーションを停止してからリソース・アダプタを停止するようにしてください。

  • アクティブなエンドポイントがあるリソース・アダプタを事前に停止せずに再デプロイすると、アクティブなエンドポイントが原因で、OC4JによってDeployerException例外がスローされます。リソース・アダプタを停止してから再デプロイするようにしてください。

  • stop()メソッドがコールされた後、OC4Jはリソース・アダプタを機能しないものとして扱います。OC4Jはstop()メソッドからの例外を無視します。

  • リソース・アダプタが停止された後で再起動するために、OC4Jは新しいResourceAdapterインスタンスを作成し、そのインスタンスのstart()メソッドをコールします。


OC4J内でのリソース・アダプタの手動による停止または再起動

OC4J内のリソース・アダプタは手動で停止することができます。Application Server Controlコンソールの中で適切な「リソース・アダプタ」ホームページから次の手順を取ってください。

  1. 「停止」機能を選択します。

  2. 「確認」ページで、「はい」を選択してアクションを確認します。

リソース・アダプタの停止後、次のようにして「リソース・アダプタ」ホームページからもそれを再起動することができます。

  1. 「起動」機能を選択します。(それ以上の手順は必要ありません。)リソース・アダプタのステータスがホームページに表示されます。