この章では、デプロイ・プランの作成方法と使用方法について説明します。デプロイ・プランは、アーカイブをOracle Containers for J2EE(OC4J)にデプロイする際の構成データの編集と再利用のプロセスを容易にします。次の項目について説明します。
他のJ2EEコンテナと同じく、OC4Jは、ベンダー固有のデプロイメント・ディスクリプタ・ファイルをいくつも利用します。これらは、標準のJ2EEデプロイメント・ディスクリプタが拡張されたものです。たとえば、OC4J固有のorion-application.xml
ディスクリプタは、OC4J固有の構成データを含むようにJ2EE標準のapplication.xml
ディスクリプタを拡張したものです。J2EEとOC4Jのデプロイメント・ディスクリプタの関係の概要は、「J2EEおよびOC4Jデプロイメント・ディスクリプタの概要」を参照してください。
JSR-88の重要な機能は、デプロイ・プラン、すなわちアーカイブをOC4Jにデプロイするために必要なすべての構成データをクライアント・サイドで集約したものを作成することです。このデプロイ・プランは、Application Server Controlのデプロイ・プラン・エディタ機能を使用してデプロイ時に編集できます。この方法で、特定のインストールに合せて構成データを簡単に変更することができます。(詳細は、「デプロイ・プランでのプロパティの設定」を参照してください。)
アーカイブがデプロイされるとき、アーカイブとデプロイ・プランの両方がOC4Jサーバーに送られます。OC4Jは、デプロイ・プランの内容を使用して、ORACLE_HOME
/j2ee/
instance
/application-deployments
ディレクトリにOC4J固有の様々なディスクリプタを生成します。
たとえば、WARとEJB JARを含むEARがデプロイされる場合、デプロイ・プランには、これらのアーカイブそれぞれについて集約された構成データが含まれます。このデータは、OC4Jによって生成されるorion-application.xml
、orion-web.xml
、orion-ejb-jar.xml
の各ディスクリプタにデプロイ時に書き込まれます。
一旦デプロイ・プランを作成すると、ファイルとして保存することも可能です。このファイルは、同じコンポーネントの再デプロイまたは他のコンポーネントのデプロイで再利用できます。デプロイ時に既存のデプロイ・プランをコンポーネントに適用しない場合は、デフォルトで新しいプランが作成されます。
注意: デプロイ・プランには、デプロイ終了後にEARを削除すべきかどうかを指定するプロパティなど、デプロイメント・ディスクリプタにはないがデプロイ・プロセスで必要になるその他のプロパティが含まれます。 |
1つ以上のOC4J固有ディスクリプタ(orion-application.xml
やorion-ejb-jar.xml
など)がデプロイ対象のアーカイブにパッケージされている場合、デプロイ・プランはこれらのファイルのデータで初期化されます。その後、デプロイする前に、Application Server Controlのデプロイ・プラン・エディタで構成データを編集できます。(詳細は、「デプロイ・プランでのプロパティの設定」を参照してください。)
デプロイ・プラン・エディタで行った変更は、アーカイブには書き込まれません。たとえば、デプロイ・プラン・エディタを使用して、アプリケーションレベルで使用するUserManager
クラスを定義したとします。アプリケーションがデプロイされるとき、OC4Jで生成されたorion-application.xml
ファイルには<user-manager>
要素が追加されます。アーカイブにパッケージされているorion-application.xml
ファイルには含まれません。
デプロイメント・ディスクリプタは、J2EEのアプリケーションおよびモジュールと一緒にデプロイされる構成ファイルです。各J2EE標準デプロイメント・ディスクリプタは、対応するOC4J固有のディスクリプタによって拡張されます。次の表で、これらのファイルについて説明し、互いの関係を示します。
OC4J固有の各ディスクリプタを記述するXML Schema Definition(XSD)ファイルについても説明します。現行のOracle XSDは次のリンクで確認できます。
http://www.oracle.com/technology/oracleas/schema/index.html
表8-1 J2EEおよびOC4Jのデプロイメント・ディスクリプタ
J2EE標準ディスクリプタ | OC4J固有ディスクリプタ |
---|---|
J2EEアプリケーションのコンポーネント(Enterprise JavaBeans(EJB)やWebモジュールなど)を指定します。アプリケーションの追加構成も指定できます。このディスクリプタは、アプリケーションのEARファイルの |
通常は、OC4J固有の構成(セキュリティ・ロール・マッピング、データ・ソース定義、JNDIネームスペース・アクセス、共有ライブラリ交換など)を定義します。J2EEの このファイルの形式は |
一連のJ2EE Webコンポーネント(静的ページ、サーブレット、JSPページなど)を指定および構成します。Webコンポーネントがコールするその他のコンポーネント(EJBモジュールなど)の指定と構成も行います。複数のWebコンポーネントが独立したWebアプリケーションを形成し、スタンドアロンWARファイルとしてデプロイされることがあります。 |
標準のJ2EEディスクリプタを、アプリケーションレベルのOC4J固有の構成データ(開発者モードやJSPの自動リロードなどのOC4J機能が有効かどうかなど)で拡張したものです。 このファイルの形式は |
JAR内のEJBモジュールの特定の構造上の特徴や依存状態を定義し、BeanがEJBコンテナに対してどのように対応するかをEJBコンテナに知らせます。 |
アーカイブ内のすべてのEJBモジュールに対してOC4J固有の構成データ(EJBプール設定、タイムアウトと再試行の設定、JNDIマッピング、finderメソッドの指定など)を定義します。TopLink永続性マネージャのプロパティも含まれます。 このファイルの形式は |
アーカイブにパッケージされたJ2EEアプリケーション・クライアントで使用されるEJBモジュールやその他のリソースを指定します。 |
EJBモジュールのホーム・インタフェースまたは外部リソース(データ・リソース、JMSキュー、メールセッションなど)へのJNDIマッピングなど、OC4Jデプロイ・データが含まれます。 このファイルの形式は |
RARファイルにパッケージされたリソース・アダプタの実装コード、構成プロパティおよびセキュリティ設定に関する情報が含まれます。 |
1つのリソース・アダプタのデプロイ構成データが含まれます。このデータには、使用されるJNDI名、EIS接続情報、接続プーリング・パラメータ、リソース・プリンシパル・マッピングなどの情報が含まれます。 このファイルの形式は
スタンドアロン・リソース・アダプタがデプロイされたOC4Jインスタンスでは、それらのスタンドアロン・リソース・アダプタの列挙が含まれます。埋込みリソース・アダプタがデプロイされたJ2EEアプリケーションでは、アプリケーションにバンドルされている埋込みリソース・アダプタのリストが含まれます。 このファイルの形式は |
Webサービスを指定します。WARファイルにパッケージされたWebサービス・アプリケーションに関するWSDL情報やJAX-RPCマッピング・データなどが含まれます。 |
OC4J Webサービス・コンテナで使用されるプロパティ(WSDLファイルを公開するかどうかなど)を定義します。Webサービスとして実装されるEJBモジュール固有のエンドポイント・アドレスやデータも定義します。このファイルは、Webサービスを含むWARまたはEJB JARにパッケージできます。 このファイルの形式は |
デプロイ・プランの作成または編集にはデプロイ・プラン・エディタ機能を使用しますが、これは、WebベースのOracle Enterprise Manager 10g Application Server Controlインタフェースや、Oracle JDeveloper 10g統合開発環境のJ2EE EditionおよびStudio Editionで提供されます。
Application Server Controlで提供されるデプロイ・プラン・エディタには、デプロイ・ウィザードの3番目(最後)のページからアクセスできます。このページの「デプロイ・プランの編集」ボタンをクリックすると、エディタが表示されます。
デプロイされる各アーカイブは、エディタの左側のナビゲーション・ペインの「XPath」ノードに表示されます。アーカイブ・ノードを選択して、そのアーカイブ・タイプのデプロイ・プラン・プロパティにアクセスします。次の情報を確認できます。
アーカイブにパッケージされているJ2EE標準ディスクリプタ。
XMLの要素と属性の現行の値。デプロイ時に生成されるOC4J固有ディスクリプタに設定されます。
デプロイ・プランに設定できる一連のプロパティ。それぞれが、デプロイ時に生成されるOC4J固有ディスクリプタの要素または属性に対応します。
設定できる各プロパティの詳細は、「デプロイ・プランでのプロパティの設定」を参照してください。XMLディスクリプタ・ファイルに設定できるすべてのパラメータを、デプロイ・プラン・エディタで設定できるわけではありません。デプロイ後に設定されるパラメータは公開されません。
デプロイ・プランを作成すると、XMLファイルとして保存できます。これは、他のアプリケーションのデプロイに適用することができます。
デプロイ・ウィザードの最初のパネルで、デプロイ時に適用する既存のデプロイ・プランを選択することもできます。一旦デプロイ・プランを取得すると、編集することも、そのまま使用することも可能です。
Oracle JDeveloper 10gのデプロイ・プラン・エディタ機能は、「アプリケーションの構成」パネルとして表示されます。
デプロイ・プラン・エディタを使用するには、ターゲットのOC4Jインスタンスに対してタイプがJ2EE 1.4サーバーである接続を作成する必要があります。これは、「接続ナビゲータ」パネルから起動するウィザードで行います。
接続したら、アーカイブを選択して「connection_nameに配布」を選択すると、「アプリケーションの構成」パネルが表示されます。
デプロイ・プランを作成すると、XMLファイルとして保存できます。これは、他のアプリケーションのデプロイに適用することができます。
アーカイブをOC4Jにデプロイする方法は、Oracle JDeveloperオンライン・ヘルプのアプリケーションのデプロイに関するトピックを参照してください。
この項では、デプロイ・プランで設定できるプロパティとその設定方法を説明します。デプロイ対象のアーカイブのタイプごとに説明します。
EARファイルにパッケージされたJ2EEアプリケーションをデプロイするときに、次のOC4J固有のプロパティを設定できます。各プロパティはorion-application.xml
ディスクリプタの要素属性にマップされます。
applicationId
アプリケーションの一意の識別子を指定する、サーバー定義文字列を含みます。
autoCreateTables
true
に設定すると、CMP Enterprise JavaBeans(EJB)モジュールのデータベース表がこのアプリケーションに自動的に作成されます。デフォルトはfalse
です。
autoDeleteTables
このアプリケーションを再デプロイするときに、CMP Beanの古いデータベース表を自動的に削除するかどうかを指定します。デフォルトはfalse
です。
cluster
アプリケーション・レベルでのOC4Jアプリケーション・クラスタリングを構成します。通常、アプリケーション・クラスタリングはグローバル・レベルで構成されますが、アプリケーションレベルの設定によってグローバル構成はオーバーライドされます。OC4Jクラスタリング・フレームワークの詳細は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。
enabled
: アプリケーションでクラスタリングを有効にするかどうかを指定します。デフォルトはtrue
です。アプリケーション・レベルにおけるこの値の設定は、親アプリケーションから継承した値をオーバーライドします。クラスタリングは特定のアプリケーションで有効または無効にできます。
groupName
: レプリケーション・グループ・チャネルを確立するときに使用する名前。指定しないと、server.xml
(OC4Jサーバー構成ファイル)に定義されているアプリケーション名がデフォルトで使用され、各エンタープライズ・アプリケーションに新しいグループ・チャネルが作成されます。
値を指定すると、アプリケーションとすべての子アプリケーションが、このアプリケーション・グループ名に関連付けられたチャネルを使用します。
allowColocation
: 同じホスト・マシンに常駐するアプリケーション・グループ・メンバーへのアプリケーション状態のレプリケートを許可するかどうかを指定します。デフォルトはtrue
です。
複数のOC4Jインスタンスが同じマシンでインスタンス化されている場合は、default-web-site.xml
、jms.xml
およびrmi.xml
構成ファイルでインスタンスごとに異なるリスナー・ポートを指定する必要があります。
writeQuota
: アプリケーション状態をレプリケートする他のアプリケーション・グループ・メンバー(JVM)の数。この属性によって、状態を書き込むノード数を制限して、オーバーヘッドを削減することができます。これは以前のOC4Jリリースで使用されたアイランドの概念に似ています。デフォルトは1
グループ・メンバーです。
cacheMissDelay
: セッションがローカルで見つからない場合に、別のアプリケーション・グループ・メンバーがセッションに応答するまでプロセス内で待機する時間(ミリ秒)。セッションが見つからない場合、指定した時間だけリクエストが一時停止します。デフォルトは1000
ミリ秒(1秒)です。
replicationPolicy
: 適用するレプリケーション・ポリシーを指定します。このポリシーはデータのレプリケーションをいつ行うかを定義します。
理想的な設定値は、WebモジュールとEJBモジュールでは異なります。有効な値は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。
propertyConfig
: クラスタリングの通信プロトコル・スタックを定義するプロパティを含みます。
propertyString
: クラスタリングの通信プロトコル・スタックを定義するプロパティを含む文字列。
url
: クラスタリングの通信プロトコル・スタックを定義するプロパティを含むXML構成ファイルへのリンク。
protocol
: データ・レプリケーションで使用するメカニズムを定義します。1つしか指定できないことに注意してください。使用されるデフォルトのプロトコルはmulticast
です。
database
: 状態データをデータベースに永続化するために必要な接続情報。
dataSource
: データベース接続を提供するデータ・ソースの名前。データ・ソースのJNDI名(data-sources.xml
に指定されたjndi-name
属性の値)を指定する必要があります。
peer
: レプリケーションのピアツーピア(P2P)通信を使用するために必要な構成を含みます。
range
: 潜在的なピア・ノードを探すときにポート値を増分する回数。デフォルトは5回です。スタンドアロンOC4Jのインストールで静的なピアツーピア・レプリケーションを構成する場合のみ有効です。
startPort
: ピア通信に関してこのアプリケーション・クラスタ構成で使用するために割当てを試行する初期ポート。デフォルトはポート7800
です。スタンドアロンOC4Jのインストールで静的なピアツーピア・レプリケーションを構成する場合のみ有効です。
timeout
: 潜在的なピア・ノードを探すときにピアからのレスポンスを待機する時間(ミリ秒)。デフォルトは3000
ミリ秒(3秒)です。スタンドアロンOC4Jのインストールで静的なピアツーピア・レプリケーションを構成する場合のみ有効です。
nodes
: 使用可能なOC4Jサーバーのリストに関して、ポーリングするノードのホスト名とポートを指定します。複数のノードを指定できます。スタンドアロンOC4Jのインストールで静的なピアツーピア・レプリケーションを構成する場合のみ有効です。
bindAddr
: バインドするネットワーク・インタフェース・カード(NIC)のIPアドレスを指定します(オプション)。これは、OC4Jホスト・マシンに複数のネットワーク・カードがあり、それぞれに固有のIPアドレスがあるとき、マルチキャスト・メッセージの送受信に使用するNICを定義する場合に役立ちます。
multicast
: レプリケーションでマルチキャスト通信を使用するために必要な構成を含みます。このメカニズムはデフォルトで使用されます。
ip
: 使用するマルチキャスト・アドレス。OC4Jのデフォルトは230.230.0.1
です。
port
: 使用するマルチキャスト・ポート。OC4Jのデフォルトはポート45566
です。
bindAddr
: バインドするネットワーク・インタフェース・カード(NIC)のIPアドレスを指定します(オプション)。これは、OC4Jホスト・マシンに複数のネットワーク・カードがあり、それぞれに固有のIPアドレスがあるとき、マルチキャスト・メッセージの送受信に使用するNICを定義する場合に役立ちます。
replicationPolicy
: HttpSession
またはステートフル・セッションBeanの状態のレプリケーションをいつ行うか、および、すべての属性や変数の値または変更された値のみのいずれをレプリケートするかを定義します。レプリケーション・プロセスにはコストがかかることがあり、データを頻繁にレプリケートすることでサーバーのパフォーマンスに影響することもあります。ただし、データをあまりレプリケートしないと、サーバー障害時にデータが失われることがあります。
scope
: レプリケートするデータを定義します。すべての属性や変数の値、または変更された値のみをレプリケートします。デフォルトでは、変更されたHTTPセッション属性のみがレプリケートされます。ステートフル・セッションBeanの場合はすべてのメンバー変数がレプリケートされます。
trigger
: レプリケーションをいつ行うかを指定します。デフォルトでは、onRequestEnd
ポリシーが適用されます。このポリシーではデータが頻繁にレプリケートされ、JVMが予期せず終了した場合にもデータが失われないようにします。
connectorsPath
アプリケーションと一緒にデプロイされるプラグイン・コネクタを定義します。
path
: oc4j-connectors.xml
ファイルの名前とパス。指定しない場合、OC4Jが使用するデフォルトのパスはORACLE_HOME
/j2ee/
instance
/connectors/
rarName
./oc4j-connectors.xml
です。
dataSourcesPath
アプリケーションで使用されるデータ・ソースを定義するXMLファイルのパスとファイル名を指定します。
OC4Jで使用されるデフォルトのデータ・ソースを定義するデフォルトのdata-sources.xml
ファイルは、ORACLE_HOME
/j2ee/
instance
/config/
ディレクトリにインストールされます。
path
: XMLファイルのパス。パスは、絶対パスとして指定するか、orion-application.xml
ディスクリプタの位置(デフォルトではORACLE_HOME
/j2ee/
instance
/config/
)に対する相対パスとして指定することができます。
defaultDataSource
サーバーのデフォルト以外の場合は、使用するデフォルトのデータ・ソースを定義します。指定する場合は、このアプリケーションの有効なCMTデータ・ソースを指定してください。
deploymentVersion
このJARがデプロイされたOC4Jのバージョンを定義します。このバージョンが現行バージョンと一致しない場合、JARは再デプロイされます。これは内部サーバー値であるため、編集しないでください。
enableIIOP
IIOPを有効にするには、true
に設定します。デフォルトはfalse
です。
importedLibraries
アプリケーションによってインポートされる1つ以上の共有ライブラリや、親アプリケーションからデフォルトで継承される一連のライブラリから削除する1つ以上の共有ライブラリを定義します。
editImport
: アプリケーションによってインポートされる共有ライブラリを指定します。
maxVersion
: インポートする共有ライブラリの最高実装バージョン。(最新バージョンの共有ライブラリをインポートするには、バージョンを指定しないでください。)
minVersion
: インポートする共有ライブラリの最低実装バージョン。
name
: インポートする共有ライブラリの名前。
editRemove:
アプリケーションの親からデフォルトで継承される一連の共有ライブラリから削除する共有ライブラリを指定します。継承されるライブラリには、サーバーレベルのsystem
アプリケーションとdefault
アプリケーションから継承される共有ライブラリも含まれます。これらは、OC4Jにデプロイされるすべてのアプリケーションでデフォルトで継承されます。
name
: 削除する共有ライブラリの名前。
jazn
XMLベースの構成プロバイダ・タイプを使用するように、Java Authentication and Authorization Service(JAAS)を構成します。このプロパティはorion-application.xml
の<jazn>
要素にマップされます。アプリケーションに対する<jazn>
要素の使用に関する詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』のjazn.xml
ファイルの<jazn>
要素の説明を参照してください。
provider
: XML
に設定します。
location:
jazn-data.xml
ファイルのパス(./jazn-data.xml
など)を設定します。これは、絶対パスにすることもjazn.xml
ファイルに対する相対パスにすることもできます。このとき、JAASプロバイダは、まずjazn.xml
ファイルを含むディレクトリでjazn-data.xml
を探します。jazn.xml
ファイルが構成されている場合には、この指定はオプションであり、構成されていない場合には指定が必要です。
persistence
: 値は、NONE
(変更内容を永続化しない)、
ALL
(すべての変更の後で変更内容を永続化する)、VM_EXIT
(デフォルト、JVMが終了するときに変更内容を永続化する)です。
default-realm
: レルム名。たとえば、sample_subrealm
などです。1つのレルムしか構成しない場合はオプションです。
JAAS構成とjazn-data.xml
およびjazn.xml
ファイルの詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』を参照してください。
jaznLoginConfig
JAASログイン・モジュールとアプリケーションを関連付けるために使用するデータが含まれます。これらのプロパティは、jazn-data.xml
ファイルの<jazn-loginconfig>
要素とそのサブ要素に対応します。表示されるのは、JAZN XMLベース・プロバイダがアプリケーションで使用される場合のみです。
className
: ログイン・モジュールの実装クラス。
controlFlag:
認証を正常に続行するためにログイン・モジュールが必要かどうかを指定します。
options
: ログイン・モジュールに名前/値ペアとして渡す1つ以上のプロパティのコレクション。たとえば、名前がdebug
で値がtrue
のようなペアです。
jazn-data.xml
ファイルとこれらのプロパティの詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』を参照してください。
jmxMBeans
アプリケーションと一緒にデプロイされる1つ以上のMBeanを定義します。デプロイされるMBeanごとに次の各プロパティを指定します。
className
: MBeanの実装クラス。
description
: MBeanの判読可能な名前を含む文字列。この名前は、Application Server Controlのユーザー・インタフェースに表示されます。
objectName
: この名前の下にMBeanを登録します。名前のドメイン部は指定しても無視されます。アプリケーションMBeanの登録には、アプリケーションのデプロイ名がドメイン名として使用されます。
たとえば、widget
という名前のアプリケーションと一緒にMyMBeanA
という名前のMBeanをデプロイする場合は、この属性の値として:name=MyMBeanA
と指定します。この場合、名前はwidget:name=MyMBeanA
と表示されます。
libraries
このOC4Jインスタンスのライブラリ・パスとして追加する、ディレクトリ、JARアーカイブまたはZIPアーカイブに対する相対パス、絶対パスまたはURLを指定します。ディレクトリは、OC4J起動時に、組み込むアーカイブを検出するためにスキャンされます。
path
: ディレクトリまたはアーカイブのパス。
log
アプリケーションのロギング構成を設定します。
file
: アプリケーションでテキスト・ロギングが使用される場合にテキスト・ログ・ファイルが生成されるディレクトリのパス(オプション)。テキスト・ログ・ファイルのデフォルトの場所は、ORACLE_HOME
/j2ee/
instance
/application-deployments
/application_name
/application.log
です。デフォルトのログ・ファイル名とパスは変更できません。
mail
: ログ出力をメール送信する宛先の電子メール・アドレスを設定します(オプション)。このオプションを選択する場合は、有効なメールセッションをmailSessions
で指定する必要があります。
odl
: アプリケーションで使用されるOracle Diagnostic Loggingを構成します。ODLフレームワークによって、標準Javaフレームワークを補完して、ログ・データをOracleログ分析ツールに自動的に統合するプラグイン・コンポーネントが提供されます。ODLフレームワークでは、ログ・ファイルの形式はXMLであるため、他のOracle Application Serverやカスタム開発コンポーネントがログ・ファイルをより簡単に解析および再利用できます。
maxDirectorySize
: ログ・ファイル・ディレクトリの最大サイズ(バイト単位)。この制限を超えると、ログ・ファイルが古いものから順にパージされます。
maxFileSize
: 個々のログ・ファイルの最大サイズ(バイト単位)。この制限に達すると、新しいログ・ファイルが生成されます。
path
: このコンポーネントのlog.xml
ファイルを出力するフォルダのパス。絶対パス、または変更しているXML構成ファイルに対する相対パスを指定します。
たとえば、ORACLE_HOME
/j2ee/
instance
/log/
内の/hello-planet-xml
ディレクトリにlog.xml
ファイルを出力するには、path属性に"../../log/hello-planet-xml
"を設定します。
mailSessions
アプリケーションでSMTPを使用する場合に、メールセッションのSMTPホストを定義します。
location
: メールセッションを格納するネームスペース内の場所。
smtp-host
: セッションのSMTPサーバー・ホスト。
namespaceAccess
RMIクライアントのネームスペースまたはネーミング・コンテキストのセキュリティ・ポリシーを設定します。
parentApp
このアプリケーションの親になるアプリケーションの名前を指定します。この値はデプロイ時に設定します。
persistencePath
アプリケーションの再起動の前後でアプリケーションの状態データを格納するディレクトリのパスを定義します。パスは、絶対パスまたはアプリケーション・ルートに対する相対パスとして指定できます。
path
: 永続ディレクトリのパス。
resourceProviders
リソース・プロバイダを定義します。
className
: リソース・プロバイダ・クラスの名前。
name
: リソース・プロバイダを識別するために使用する名前。この名前は、アプリケーションのJNDIでリソース・プロバイダを探すときに、java:comp/resource/name/
のように使用されます。
description
: 特定のリソース・プロバイダの説明(オプション)。
properties
: リソース・プロバイダにパラメータとして渡すプロパティの名前/値ペアを設定します。
seeParentDataSources
親アプリケーションに定義された既存のデータ・ソースをアプリケーションに継承するかどうかを指定します。デフォルトはfalse
です。
このプロパティは、OC4J 10g(10.1.3.5.0)で非推奨になります。
taskManagerInterval
タスク・マネージャが処理を実行する間隔(ミリ秒)を定義します。タスク・マネージャは、クリーンアップ・アクティビティを実行するバックグラウンド・プロセスです。デフォルトでは1秒(1000
ミリ秒)おきに起動されます。
treatZeroAsNull
主キーの値が0のときにNullと解釈するかどうかを指定します。デフォルトはfalse
です。
userManagerByClass
使用するUserManager
クラス(オプション)を指定します。これには、com.evermind.security.UserManager
インタフェースを実装する任意のクラスを指定できます。たとえば、com.evermind.sql.DataSourceUserManager
やcom.evermind.ejb.EJBUserManager
です。通常これらのクラスは、既存のシステムを統合して、Webアプリケーションにカスタム・ユーザーマネージャを提供するために使用されます。
className
: UserManager
クラスの完全修飾名。
description
: 説明テキスト(オプション)。
displayName
: このUserManager
インスタンスを説明する名前。
properties
: 名前/値ペアとしてUserManager
に渡す1つ以上のプロパティ。次に例を示します。
name="groupMembershipGroupFieldName" value="group" name="groupMembershipUsernameFieldName" value="Userid"
注意: com.evermind.security パッケージおよびそのクラスは非推奨になります。これらは11gリリースではサポートされません。com.evermind.security.UserManager 実装のかわりに、『Oracle Containers for J2EEセキュリティ・ガイド』に記載されているJAASカスタム・ログイン・モジュールを使用できます。 |
webSiteBinding
アプリケーションのWebモジュールをバインドするWebサイトの名前を指定します。デフォルトでは、OC4Jにデプロイされるすべてのアプリケーションがdefault
のWebサイトにバインドされます。OC4JでのWebサイトの作成と使用の詳細は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。
WARファイルにパッケージされたWebモジュールをデプロイするときに設定できるOC4J固有のプロパティを、次に詳しく示します。各プロパティはorion-web.xml
ディスクリプタの要素属性にマップされます。
accessMask
このアプリケーションのアクセス・マスクを指定します(オプション)。hostAccess
プロパティにホスト名またはドメインを指定して、クライアントをフィルタ処理することができます。また、ipAccess
にIPアドレスとサブネットを指定して、クライアントをフィルタ処理することもできます。あるいは、これら両方を定義することも可能です。
default
: hostAccess
またはipAccess
プロパティに指定されていないクライアントからのリクエストを許可するかどうかを指定します。指定できる値はallow
(デフォルト)とdeny
です。
hostAccess
: アクセスを許可または拒否するホスト名またはドメインを指定します。
domain
: ホストまたはドメイン。
mode
: 指定したホストまたはドメインからのアクセスを許可するか拒否するか。指定できる値はallow
(デフォルト)またはdeny
です。
ipAccess
: アクセスを許可または拒否するIPアドレスとサブネット・マスクを指定します。
ip
: 32ビット値のIPアドレス。たとえば、123.124.125.126
と指定します。
netmask
: 対応するサブネット・マスク。たとえば、255.255.255.0
と指定します。
mode
: 指定したIPアドレスとサブネット・マスクからのアクセスを許可するか拒否するか。指定できる値はallow
(デフォルト)またはdeny
です。
autoJoinSession
ユーザーがアプリケーションにログインしたときにすぐにセッションを割り当てるかどうかを指定します。デフォルトはfalse
です。
classpath
Webアプリケーションのクラスをロードするための追加コードの位置を指定します。これには、ライブラリ・ファイル、または個々のクラス・ファイルの場所を指定できます。
path
: 1つ以上のコードの位置のパス。カンマまたはセミコロンで区切って指定します。位置としては、次のいずれかを指定できます。
JARファイルまたはZIPファイルの、ファイル名も含む完全なパス
ディレクトリのパス
ディレクトリ・パスを指定すると、クラス・ローダーは指定したディレクトリの個々のクラス・ファイルのみを認識し、JARファイルまたはZIPファイルは認識しません(これらのファイルが個別に指定されていない場合)。
クラス・ローダーが認識する内容は次のとおりです。
lib1.jar
ライブラリおよびzip1.jar
ライブラリ(ただし、/abc/def
のその他のライブラリは含まない)
/abc/def
のすべてのクラス・ファイル
生成されるorion-web.xml
ファイルの場所に対して相対的なmydir
にあるすべてのクラス・ファイル
defaultBufferSize
サーブレット・レスポンスのための出力バッファのデフォルト・サイズ(バイト単位)を指定します。デフォルトは2048
です。
defaultCharset
デフォルトで使用されるISOキャラクタ・セットを指定します。デフォルトはiso-8859-1
です。
defaultMimeType
拡張子が不明または未認識のファイルで使用するデフォルトのMIMEタイプを指定します。
deploymentVersion
このWebアプリケーションがデプロイされたOC4Jのバージョンを指定します。この値が現行バージョンと一致しない場合、アプリケーションは再デプロイされます。これは内部サーバー値であるため、変更しないでください。
development
このプロパティは、開発中に使用すると役立ちます。true
に設定すると、OC4Jサーバーが、サーブレット・ソース・ファイルの更新を特定のディレクトリでチェックします。ソース・ファイルが最後のリクエスト以降に変更された場合、OC4Jは次のリクエストでサーブレットを再コンパイルし、Webアプリケーションを再デプロイし、サーブレットと依存クラスをリロードします。
ディレクトリは、この後で説明するsourceDirectory
属性の設定で決まります。
directoryBrowsing
最後に/
が付いたURLのディレクトリ参照を許可するかどうかを指定します。値はallow
とdeny
(デフォルト)です。
次の状況を想定します。
URLがマップされたディレクトリにindex.html
ファイルがない。
web.xml
ファイルにwelcomeページが定義されていない。
このような場合にallow
を設定すると、最後に/
が付いたURLにアクセスしたときに、対応するディレクトリの内容がユーザーのブラウザに表示されます。
このような場合にdeny
を設定すると、最後に/
が付いたURLにアクセスしたときに、ディレクトリの内容を表示できないことを示すエラーが発生します。
welcomeファイルが定義されている場合、またはURLがマップされているディレクトリにindex.html
ファイルがある場合は、この設定に関係なくそのファイルの内容が表示されます。
enableJspDispatcherShortcut
true
に設定(デフォルト)すると、OC4J JSPコンテナによるパフォーマンスが大幅に向上します。これは、特にsimpleJspMapping
プロパティのtrue
設定と組み合せた場合に顕著です。jsp:include
タグが多く含まれるJSPページで高い効果があります。
ただし、true
設定を使用すると、JSPファイルをweb.xml
の<jsp-file>
要素で定義した場合に、それらのファイルに対応するurl-pattern
定義があるものと想定されます。
expirationSettings
指定した一連のリソース(イメージ・ファイルなど)のユーザーのブラウザでの期限を定義します。これは、イメージをドキュメントほど頻繁にリロードしないキャッシング・ポリシーなどで役立ちます。
expires
: リソースの期限(秒)。期限なしの場合はnever
を指定します。デフォルト設定の0
(ゼロ)ではすぐに期限切れになります。
urlPattern
: 期限を適用するURLパターン。次のように指定します。
urlPattern="*.gif"
fileModificationCheckInterval
変更されたファイルをOC4Jがチェックする間隔(ミリ秒)を定義します。このプロパティは、静的ファイル(HTMLファイルなど)のみに適用されます。
最後にチェックしてからこの期間が終了するまでの間は、チェックは必要ありません。0または負の数を指定すると、常にチェックが行われます。デフォルトは1000
です。パフォーマンス上の理由から、本番環境では非常に大きな値(たとえば1000000
)をお薦めします。
id
デプロイ時に生成される一意の内部IDを定義します。
jaznWebApp
サーブレット実行について、OracleAS JAAS ProviderおよびSingle Sign-On(SSO)のプロパティを構成します。特定のセキュリティ・サブジェクトの権限においてサーブレットを起動するには、次の機能を適切に設定する必要があります。
authMethod
: サポートされる値はBASIC
(基本のJ2EE認証、デフォルト)およびSSO
です。SSO
を使用すると、Oracle Single Sign-OnがHTTPクライアント認証に利用されます。アプリケーションでカスタムのLoginModule
インスタンスが使用される場合は、BASIC
モードを使用します。
runAsMode
: true
に設定すると、特定のサブジェクトの権限を使用してサーブレットが起動されます。サブジェクトは、javax.security.auth.Subject
クラスのインスタンスによって定義され、1つのエントリ(人物など)に関する一連の事実を含みます。このような事実には、IDやセキュリティ関連の属性(パスワードや暗号化キーなど)があります。
デフォルトのrunas-mode="false"
設定ではdoasprivileged-mode
は無視されます。
doAsPrivilegedMode
: runAsMode
がtrue
に設定されていると想定した場合、サーバーのアクセス制御の制限を受けずに、特定のサブジェクトの権限を使用するには、デフォルトのtrue
設定を使用します。
JAASおよびこの要素について説明した機能の詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』を参照してください。
jspCacheDirectory
JSPキャッシュ・ディレクトリを指定します。これは、JSPトランスレータの出力ファイルのベース・ディレクトリとして使用されます。また、アプリケーションレベルのTLDキャッシングのベース・ディレクトリとしても使用されます。デフォルト値は./persistence
で、アプリケーション・デプロイ・ディレクトリに対する相対パスです。
jspCacheTlds
永続TLDキャッシングをJSPページで有効にするかどうかを指定します。TLDキャッシングは、グローバル・レベル(共有タグ・ライブラリの場所にあるTLDファイル)とアプリケーションレベル(/WEB-INF
ディレクトリ内のTLDファイル)の両方で実装されます。値は、standard
(デフォルト)、on
またはoff
です。タグ・ライブラリの場所は、jspTaglibLocations
プロパティ(この後で説明)で定義します。これらの値の詳細は、『Oracle Containers for J2EE JavaServer Pages開発者ガイド』を参照してください。
jspPrintNull
false
に設定すると、JSPページのヌル出力に対して、デフォルトのヌル文字列ではなく空文字列が表示されます。デフォルトはtrue
です。
jspTaglibLocations
共有タグ・ライブラリの場所を定義します。この値は、グローバル・アプリケーションレベルのみで設定できます。
jspTimeout
整数値(秒)を指定します。JSPページが要求されないまま指定の秒数が経過すると、メモリーから削除されます。あまり頻繁にコールされないページがある場合は、これでリソースが解放されます。デフォルト値の0
(ゼロ)はタイムアウトなしです。
mimeMappings
使用するMIMEマッピングを含むファイルのパスを定義します。
path
: ファイルのパスまたはURL。絶対パスまたは、orion-web.xml
ファイルの場所に対する相対パスとして指定します。
persistencePath
サーバーの再起動またはアプリケーションの再デプロイの前後で永続性を保つように、サーブレットのHttpSession
オブジェクトを格納する場所を指定します。application-deployments
ディレクトリ内のOC4J一時記憶域に対する相対パスを指定します。デフォルト値はありません。値を定義しないと、再起動または再デプロイの前後でのセッション・オブジェクトの永続性がなくなります。
この機能を使用するには、セッション・オブジェクトが、シリアライズ可能(直接または間接的にjava.io.Serializable
インタフェースを実装)かリモート対応(直接または間接的にjava.rmi.Remote
インタフェースを実装)のいずれかであることが必要です。
requestTrackers
専用リクエスト・トラッカとして使用する1つ以上のサーブレットを指定します。リクエスト・トラッカは情報のロギングなどに役立ちます。
リクエスト・トラッカは、ブラウザからサーバーに送信されるリクエストごとに、対応するレスポンスがコミットされるとき(レスポンスが実際に送信される直前)に起動されます。
複数のリクエスト・トラッカの使用が可能です。各トラッカは個別のプロパティで定義します。
servletName
: 起動するサーブレット。web.xml
ファイルの対応する<servlet-name>
要素または<servlet-class>
要素(両方とも<servlet>
要素のサブ要素)に応じて、サーブレット名またはクラス名を指定できます。
servletChaining
現行のサーブレットのレスポンスが指定のMIMEタイプに設定されたときにコールするサーブレットを指定します。指定されたサーブレットは、現行のサーブレットの後にコールされます。これは、サーブレット・チェーンと呼ばれ、特定の種類の出力のフィルタ処理や変換に使用されます。
mimeType
: チェーンのトリガーとして使用されるMIMEタイプ。"text/html"
など。
servletName
: 指定したMIMEタイプが検出されたときに呼び出すサーブレット。サーブレット名は、global-web-application.xml
、web.xml
またはorion-web.xml
の<web-app>
要素での定義によって、サーブレット・クラスに結び付けられます。
servletWebdir
クラス名によってサーブレットを起動するためのパスを指定します。URLでこのパスの後に指定される値は、パッケージなどのクラス名とみなされます。
次の例は、クラス名によるサーブレットの起動です。このプロパティは"/servlet/"
に設定されていると仮定します。
http://www.example.com:8888/servlet/foo.bar.ServletSession
通常、この機能は、開発時およびテスト時にスタンドアロンOC4J環境で使用することを目的としています。デプロイでは、コンテキスト・パスとサーブレット・パスを定義するため標準のweb.xml
メカニズムを使用します。
sessionTracking
このアプリケーションのセッショントラッキング設定を指定します。セッショントラッキングは、Cookie対応のブラウザを前提とし、Cookieを使用して行われます。
cookies
: enabled
(デフォルト)に設定すると、セッションCookieが送信されます。disabled
に設定するとこの設定が無効になります。
cookieDomain
: Cookieのために使用する希望のドメインを設定します。この属性を使用すると、複数のWebサイトで1クライアントまたは1ユーザーを追跡することができます。設定は、ピリオド(.
)を最初に付けて、少なくとも2つの要素を指定する必要があります(たとえば、.us.oracle.com
または.oracle.com
)。
この場合、ユーザーが、.us.oracle.com
というドメイン・パターンと一致するサイト(webserv1.us.oracle.com
またはwebserv2.us.oracle.com
)にアクセスすると、同じCookieが使用されます。
cookieMaxAge
: ブラウザがCookieを保持する最長期間(秒)を設定します。デフォルトでは、Cookieはブラウザのセッション中はメモリーに保持され、その後で廃棄されます。
sessionTracker
: セッション・トラッカとして使用するサーブレットの名前。
セッション・トラッカは、セッションが作成されるとすぐに起動されます。特に、HTTPセッション・リスナー(javax.servlet.http.HttpSessionListener
インタフェースを実装するクラスのインスタンス)のsessionCreated()
メソッドの起動と同時に行われます。
servletName
: セッション・トラッカとして起動するサーブレット。Webモジュールのweb.xml
ファイルの対応する<servlet-name>
要素または<servlet-class>
要素(両方とも<servlet>
要素のサブ要素)に応じて、サーブレット名またはクラス名を指定します。
simpleJspMapping
アプリケーションに影響するすべてのWebディスクリプタ(global-web-application.xml
、web.xml
およびorion-web.xml
)の<servlet>
要素で、"*.jsp
"がOC4JフロントエンドJSPサーブレット(oracle.jsp.runtimev2.JspServlet
)のみにマップされている場合は、true
に設定します。これにより、JSPページのパフォーマンスが向上します。デフォルト設定はfalse
です。
sourceDirectory
development
プロパティをtrue
に設定した場合に、自動コンパイルするサーブレットのソース・ファイルの場所を指定します。デフォルトの場所は/WEB-INF/src
です(存在する場合)。この場所が存在しない場合は、/WEB-INF/classes
になります。
temporaryDirectory
サーブレットとJSPページでスクラッチ・ファイルのために使用できる一時ディレクトリへのパスを指定します。パスは、絶対パスまたはデプロイ・ディレクトリに対する相対パスとして指定できます。デフォルト設定は"./temp
"です。
サーブレットでは、一時ディレクトリを使用することができます。たとえば、ユーザーがデータをフォームに入力し、情報がディスクに書き込まれる際に、その情報がデータベースに書き込まれるまでの暫定または短期間の格納場所として使用します。
virtualDirectories
静的コンテンツの仮想ディレクトリのマッピングを追加します。たとえば、この概念はUNIX環境のシンボリック・リンクに類似しています。
仮想ディレクトリを使用すると、実際のドキュメント・ルート・ディレクトリにあるファイルがアプリケーションで使用できるようになります。そのファイルが物理的にWebアプリケーションのWARファイルに含まれない場合でも可能です。たとえば、企業全体に対応する1つのエラー・ページを複数のWARファイルにリンクする場合に役立ちます。
realPath
: 仮想パスをマップするファイルの絶対パス。たとえば、UNIX環境では/usr/local/realpath
、Windows環境ではC:\testdir
です。
virtualPath
: 指定した絶対パスにマップする仮想パス。
webAppClassLoader
Webモジュールの起動時にOC4Jサーバーに渡されるクラスのロード方法を指定します。
searchLocalClassesFirst
: true
に設定すると、システム・クラスの前にWARファイルを検索してロードします。デフォルト設定はfalse
です。
includeWarManifestClassPath
: false
に設定すると、searchLocalClassesFirst
の設定に関係なく、WARファイルのクラスを検索およびロードするときに、WARファイルのマニフェストClass-Path
属性に指定されたクラスパスが含まれません。デフォルト設定はtrue
です。
両方の属性をtrue
に設定すると、WARファイルに物理的に含まれるクラスが、WARファイルのマニフェスト・クラスパスに定義されたクラスよりも先にロードされるように、クラスパス全体が構成されます。競合する場合は、WARファイルに物理的に存在するクラスが優先されます。
EARファイルにパッケージされたJ2EEアプリケーションをデプロイするときに設定できるOC4J固有のプロパティを、次に詳しく示します。各プロパティはorion-ejb.xml
ディスクリプタの要素属性にマップされます。
設定できるプロパティは、エンティティBean、セッションBeanおよびメッセージドリブンBeanで異なります。このため、プロパティは次のように分類されます。
次のプロパティは、デプロイ中のアーカイブ内のすべてのEJBモジュールに適用されます。
defaultMethodAccess
ロール・マッピングに関連付けられていないセキュアでないメソッドのために、デフォルトのメソッド・アクセス・ポリシーを設定します。メソッドは、デフォルトのセキュリティ・ロールに自動的にマップされます。
impliesAll
: true
に設定すると、セキュアでないメソッドのセキュリティ・ロール・チェックが無効になります。
この属性をfalse
に設定する場合は、name
属性に定義されたデフォルト・ロールを、groups
プロパティとusers
プロパティ(後続の項目を参照)を使用して、Oracle Java Authentication and Authorization Service(JAAS)ProviderあるいはXMLユーザー・グループまたはユーザーにマップする必要があります。
<security-role-mapping>
がorion-ejb-jar.xml
ファイルで指定されていてimpliesAll
が設定されていない場合、デフォルトはfalse
です。
<security-role-mapping>
がorion-ejb-jar.xml
ファイルで指定されていない場合、OC4J EJBレイヤーにおけるこの属性のデフォルトはtrue
になり、これらのメソッドに対するセキュリティ・ロール・チェックは行われません。
name
: セキュアでないメソッドがマップされるデフォルトのセキュリティ・ロール。デフォルトは<default-ejb-caller-role>
ロールです。ただし、この値は、任意の有効なロールに変更することができます。
groups
: クライアントがセキュアでないメソッドにアクセスするときに使用する1つ以上のユーザー・グループの名前。
users
: クライアントがセキュアでないメソッドにアクセスするときに使用する1つ以上のユーザーの名前。
deploymentVersion
EJB JARがデプロイされているOC4Jのバージョン。これは内部サーバー値です。
persistenceManager
エンティティEJBモジュールの永続性レイヤーの管理に使用する永続性マネージャ・コンポーネントを定義します。
TopLinkユーティリティは、OC4Jで使用されるデフォルトの永続性マネージャ(PM)です。デフォルトでは、OC4JにデプロイされるすべてのEJBモジュールはTopLink PMによって管理されます。TopLinkの構成は必要ありません。詳細は、『Oracle TopLinkスタート・ガイド』を参照してください。
descriptor
: 永続性マネージャのデプロイメント・ディスクリプタ・ファイルのファイル名。
name
: 使用する永続性マネージャの実装名。有効な値は、TopLinkを使用する場合はtoplink
、Orion CMP実装を使用する場合はorion
です。デフォルトはtoplink
です。
pmProperties:
TopLink永続性マネージャの構成プロパティを指定します。
customizationClass
: oracle.toplink.ejb.cmp.DeploymentCustomization
インタフェースを実装するJavaクラス(オプション)。このインタフェースを使用すると、TopLinkのマッピングとランタイムの構成をデプロイ時にカスタマイズできます。このクラスは完全に修飾して、デプロイするEJB JARに含める必要があります。
dbPlatformClass
: TopLinkデータベース・プラットフォーム・クラス。特定のデータベースに対応するTopLinkサポートが含まれます。指定するクラスは完全に修飾する必要があります。
projectClass
: TopLinkプロジェクト・クラス(オプション)。マッピング・メタデータが含まれます。このクラスによって、descriptor
プロパティに指定したTopLinkディスクリプタが置き換えられます。このクラスは完全に修飾して、デプロイするEJB JARファイルに含める必要があります。
remoteRelationships
: true
に設定すると、エンティティのリモート・インタフェースを介してリモート・オブジェクトの関係が維持されます。このフラグはEJB 2.0には準拠しないことに注意してください。デフォルトはfalse
です。
sessionName
: デプロイするEJB JARの一意の名前。この名前は、OC4JにデプロイされているすべてのTopLinkで永続化されたJARの間で一意であることが必要です。値を指定しないと、TopLink永続性マネージャによって一意の名前が生成されます。
mode
: 別のデータ・ストア・サーバーへの更新内容の伝播方法として同期または非同期を設定します。デフォルト値はasynchronously
です。
serverUrl
: データ・ストア・ホストのURL。
serverUser
: ホストにアクセスするときに使用するユーザー名。
dbTableGen
: TopLinkによる、マップ先のデータベース表の作成方法または使用方法を指定します。エンティティに対してマッピングがすでに定義されている場合、この設定は無視されます。次のいずれかの値を指定します。
Create
: 表の作成を試行します。これがデフォルトです。
DropAndCreate
: 既存の表の削除と再作成を試行します。
UseExisting
: 既存の表を使用します。
extendedTableNames
: 生成される表の名前が短すぎて一意にならない場合のみ、true
に設定します。エンティティに対してマッピングがすでに定義されている場合、この設定は無視されます。デフォルトはfalse
です。
次のプロパティは、EJBアーカイブに含まれるエンティティBeanに適用されます。
callTimeout
任意のリソースがビジネス・メソッドまたはライフサイクル・メソッドを起動するまで待機する最長時間(ミリ秒)を指定します。これは、ビジネス・メソッドの起動にかかる時間のタイムアウトではありません。デフォルトは90000
ミリ秒(90秒)です。タイムアウトの時間が経過すると、TimedOutException
がスローされます。これにより、データベース接続が切断されます。タイムアウトなしにする場合は0
を設定します。詳細は、『Oracle Application Serverパフォーマンス・ガイド』のEJBモジュールに関する項を参照してください。
copyByValue
EJBコールの受信パラメータと送信パラメータすべてをコピー(クローン)するかどうかを指定します。アプリケーションで高速化のためにcopy-by-valueセマンティクスを前提としていないことが確実であれば、false
に設定します。デフォルトはtrue
です。
dataSource
コンテナ管理永続性を使用する場合に、使用されるデータ・ソースの名前を指定します。
disableWrapperCache
true
に設定すると、EJBモジュールのラッパー・クラス・キャッシュが無効になります。
doSelectBeforeInsert
データベースへの挿入の前にSELECT
文を実行するかどうかを指定します。通常は、重複を避けるために、挿入を実行する前にSELECTを実行して、エンティティが存在しているかどうかを確認します。
デフォルト値はtrue
です。パフォーマンスのためには、このプロパティをfalse
に設定して余分な文の実行を避けることをお薦めします。
ただし、一意キー制約がエンティティに定義されていない場合に、この値をfalse
に設定すると、重複した挿入が検出されません。この場合に重複した挿入を防ぐには、値をtrue
にしておいてください。
findByPrimaryKeyLazyLoading
true
に設定すると、遅延ロードが有効になり、select()
finderメソッドが1回のみ実行されます。エンティティBeanのfinderメソッドでは、遅延ロードによって、このメソッドが複数回起動されることがあります。デフォルトはfalse
です。
instanceCacheTimeout
エンティティ・ラッパー・インスタンスをIDに割り当てる期間(秒)を指定します。never
を設定すると、ガベージ・コレクションが行われるまでラッパー・インスタンスが保持されます。デフォルトは60
秒です。
iorSecurityConfigs
相互運用性のためのCSIv2セキュリティ・ポリシーを構成します。詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』を参照してください。
isolation
データベース・アクションの分離レベルを指定します。
Oracleデータベースでの有効な値は、serializable
およびcommitted
(デフォルト)です。
Oracle以外のデータベースで有効な値は、none
、committed
、serializable
、uncommitted
およびrepeatable_read
です。
location
EJBモジュールがバインドされるJNDI名を定義します。
lockingMode
並行性モードを構成します。これによって、リソース競合管理のためのブロックをいつ行うか、またはいつパラレルで実行するかを指定します。次のいずれかの値を指定します。
optimistic
: 複数のユーザーがエンティティBeanをパラレルで実行できます。リソース競合が監視されないため、データ整合性の負荷がデータベース分離モードにかかります。これがデフォルトです。
pessimistic
: リソース競合を管理し、パラレル実行は許可しません。一度に1名のユーザーがエンティティBeanを1回実行できます。
read-only
: 複数のユーザーがエンティティBeanをパラレルで実行できます。ただし、コンテナでは、Beanの状態の更新は許可されません。
maxInstances
インスタンス化つまりプーリングしておくBean実装インスタンスの最大数を設定します。デフォルトは100
です。0
を設定すると、最大数の制限がなくなります。
maxTxRetries
システムレベルでの障害のためにロールバックされたトランザクションを再試行する回数を指定します。デフォルトは3
です。通常、再試行によって解決できるエラーが発生した場合のみ、再試行を追加してください。たとえば、シリアライズ可能な分離を使用している場合で、競合がある時にトランザクションを自動的に再試行するには、再試行を使用できます。
minInstances
インスタンス化つまりプーリングしておくBean実装インスタンスの最小数を設定します。デフォルトは0
です。
name
Beanの名前を指定します。標準のEJBデプロイメント・ディスクリプタ(ejb-jar.xml
)のassemblyセクションに指定された名前と一致するようにします。
poolCacheTimeout
Bean実装インスタンスをプーリングしておく期間、つまり未割当て状態にしておく期間(秒)を定義します。0
を設定すると、ガベージ・コレクションが行われるまでBeanインスタンスが保持されます。デフォルトは60
です。
txRetryWait
トランザクションを再試行するときに待機する時間(秒)を指定します。デフォルトは60
秒です。
orion-ejb-jar.xml
ファイルの<entity-deployment>
または<session-deployment>
要素のtx-retry-wait
属性は、orion-ejb-jar-10_0.xsd
またはorion-ejb-jar.dtd
にはありません。
orion-ejb-jar.xml
ファイルのtx-retry-wait
属性を使用するためtxRetryWait
を指定することは可能です。ただしこの属性を使用する場合は、(OC4Jの起動コマンドラインの-validateXML
オプションを使用して)XMLファイル検証を行うようにOC4Jを設定しないでください。
validityTimeout
キャッシュのエンティティが有効な最大時間(ミリ秒)を設定します。この時間が経過するとリロードが行われます。これは、従来システムからの更新がほとんど発生しない疎結合環境で役立ちます。この属性は、read_only
ロック・モードを使用するエンティティBeanにのみ有効です。
EJBモジュールが通常は外部で変更されない場合、つまり、表がときどき更新されてキャッシュの更新が必要になる場合は、外部でデータが変更される間隔を推定してこの値に設定してください。
データが外部でまったく変更されない場合は、値に0
または-1
を設定してこのオプションを無効にします。キャッシュのデータは、外部で変更されることのない読取り専用EJBモジュールに対して常に有効です。
次のプロパティは、EJBアーカイブに含まれるセッションBeanに適用されます。
callTimeout
任意のリソースがビジネス・メソッドまたはライフサイクル・メソッドを起動するまで待機する最長時間(ミリ秒)を指定します。これは、ビジネス・メソッドの起動にかかる時間のタイムアウトではありません。デフォルトは90000
ミリ秒(90秒)です。
0
に設定すると、タイムアウトはなしになります。詳細は、『Oracle Application Serverパフォーマンス・ガイド』のEJBに関する項を参照してください。
copyByValue
EJBコールの受信パラメータと送信パラメータすべてをコピー(クローン)するかどうかを指定します。アプリケーションで高速化のためにcopy-by-valueセマンティクスを前提としていないことが確実であれば、false
に設定します。デフォルトはtrue
です。
idleTime
ステートフル・セッションEJBモジュールに適用するタイムアウト(秒)を指定します。値が0
または負の数の場合、すべてのタイムアウトが無効になります。デフォルトは1800
秒(30分)です。timeoutパラメータは、ステートフル・セッションBeanの非アクティブのタイムアウトです。30秒ごとにプールのクリーンアップ・ロジックが起動されます。プールのクリーンアップ・ロジックでは、タイムアウト値を渡すことで、タイムアウトしたセッションのみが削除されます。アプリケーションのステートフル・セッションBeanの使用状況に基づいてタイムアウトを調整します。たとえば、ステートフル・セッションBeanがアプリケーションによって明示的に削除されず、アプリケーションが多数のステートフル・セッションBeanを作成する場合は、タイムアウト値を短縮することをお薦めします。
iorSecurityConfigs
相互運用性のためのCSIv2セキュリティ・ポリシーを構成します。詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』を参照してください。
location
EJBモジュールがバインドされるJNDI名を定義します。
maxInstances
メモリー内でインスタンス化つまりプーリングが可能なBeanインスタンスの最大数を定義します。デフォルトは100
です。
この制限に達すると、コンテナはメモリーで最も古いBeanインスタンスの受動化を試行します。失敗した場合、コンテナはcallTimeout
に指定されたミリ秒数が経過するまで待機し、受動化、remove()
メソッドまたはBeanの期限切れによって、Beanインスタンスがメモリーから削除されたかどうかを確認します。その後、クライアントにTimeoutExpiredException
をスローします。
0
に設定すると、許可されるBeanインスタンス数の制限がなくなります。このプロパティは、ステートレス・セッションBeanとステートフル・セッションBeanの両方に適用されます。
maxInstancesThreshold
maxInstances
に設定された値に対して、存在できるアクティブなBeanの割合を指定します。この割合を超えると受動化が開始されます。
パーセントを表す整数値を指定します。たとえば、maxInstances
が100
でmaxInstancesThreshold
が90
パーセントの場合、アクティブなBeanインスタンスが合計の90
パーセントを超えたときにBeanの受動化が行われます。
デフォルトは90
です。0
に設定すると、この機能は無効になります。
maxTxRetries
システムレベルでの障害のためにロールバックされたトランザクションを再試行する回数を指定します。デフォルトは3
です。通常、再試行によって解決できるエラーが発生した場合のみ、再試行を追加してください。たとえば、シリアライズ可能な分離を使用している場合で、競合がある時にトランザクションを自動的に再試行するには、再試行を使用できます。
memoryThreshold
使用済JVMメモリー容量のしきい値を定義します。この容量を超えると受動化が行われます。パーセントを表す整数値を指定します。この割合に到達すると、アイドル・タイムアウトが期限切れになっていなくてもBeanが受動化されます。デフォルトは80
パーセントです。無効にするにはnever
を指定します。
minInstances
インスタンス化つまりプーリングしておくBean実装インスタンスの最小数を設定します。デフォルトは0
です。
name
EJBモジュールの名前を指定します。標準のEJBデプロイメント・ディスクリプタ(ejb-jar.xml
)のassemblyセクションのBean名と一致するようにします。
passivateCount
いずれかのリソースしきい値(maxInstancesThreshold
またはmemoryThreshold
など)に到達した場合に、受動化するBean数を定義します。Beanの受動化は、最低使用頻度アルゴリズムを使用して実行されます。デフォルトでは、このBean数はmaxInstances
に設定された値の3分の1です。値を0
または負の数に設定すると無効になります。
persistenceFilename
OC4Jの再起動の前後でセッションが格納されるファイルのパスを指定します。
poolCacheTimeout
ステートレス・セッションがプールにキャッシュされる期間(秒)を設定します。プールのすべての未割当てBeanは、ここに指定した間隔で削除されます。デフォルトは60
秒です。
値を0
または負の数に指定すると、Beanはプールから削除されません。
replication
クラスタ環境のステートフル・セッションBeanに対して状態のレプリケーションをいつ行うかを定義します。値は、VMTermination
、EndOfCall
またはNone
(デフォルト)です。詳細は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。
resourceCheckInterval
指定したしきい値(maxInstancesThreshold
など)を超えたリソースを調べるために、OC4Jがすべてのリソースをチェックする間隔(秒)を定義します。Beanの受動化は、いずれかのしきい値に到達した場合に行われます。デフォルトは180
秒(3分)です。無効にするには0
を設定します。
timeout
非アクティブのタイムアウト(秒)を定義します。この時間が経過すると、ステートフル・セッションBeanをプールから削除できるとみなされます。値が0
または負の数の場合、すべてのタイムアウトが無効になります。デフォルトは1800
秒(30分)です。アプリケーションのステートフル・セッションBeanの使用状況に基づいてタイムアウトを調整します。たとえば、ステートフル・セッションBeanがアプリケーションによって明示的に削除されず、アプリケーションが多数のステートフル・セッションBeanを作成する場合は、タイムアウト値を短縮することをお薦めします。30秒ごとにプールのクリーンアップ・ロジックが起動されます。
txRetryWait
トランザクションを再試行するときに待機する時間(秒)を指定します。デフォルトは60
秒です。
orion-ejb-jar.xml
ファイルの<entity-deployment>
または<session-deployment>
要素のtx-retry-wait
属性は、orion-ejb-jar-10_0.xsd
またはorion-ejb-jar.dtd
にはありません。
orion-ejb-jar.xml
ファイルのtx-retry-wait
属性を使用するためtxRetryWait
を指定することは可能です。ただしこの属性を使用する場合は、(OC4Jの起動コマンドラインの-validateXML
オプションを使用して)XMLファイル検証を行うようにOC4Jを設定しないでください。
次のプロパティは、デプロイ中のアーカイブ内のメッセージドリブンBeanに適用されます。各プロパティは、orion-ejb-jar.xml
ディスクリプタの<message-driven-deployment>
要素の属性またはサブ要素に対応しています。
connectionFactoryLocation
使用するコネクション・ファクトリのJNDIロケーションを指定します。
構文は、java:comp/resource
+ リソース・プロバイダ名
+ TopicConnectionFactories
またはQueueConnectionFactories
+ ユーザー定義名
です。ConnectionFactories
プロパティは、定義されるファクトリのタイプを詳しく指定します。
dequeueRetryCnt
データベースのフェイルオーバーが発生した後で、リスナー・スレッドがJMSセッションの再取得を試行する頻度を指定します。デフォルトは0
です。この値はコンテナ管理トランザクションの場合のみ指定します。
dequeueRetryInterval
JMSセッションの再取得を試行する間隔を指定します。デフォルトは60
秒です。
destinationLocation
使用する接続先(トピックまたはキュー)のJNDIロケーションを指定します。
構文は、java:comp/resource
+ リソース・プロバイダ名
+ Topics
またはQueues
+ 接続先名
です。Topic
またはQueue
は、定義される接続先のタイプを詳しく示します。接続先名
は、データベースに定義されている実際のキューまたはトピックの名前です。
listenerThreads
トピックまたはキューでの受信JMSメッセージのリスニングのために生成されるリスナー・スレッド数を設定します。スレッドはJMSメッセージを同時に消費します。トピックに指定できるスレッドは1つのみです。キューには複数のスレッドを指定できます。デフォルトは1
スレッドです。
maxInstances
このプロパティは設定しないでください。かわりにlistenerThreads
を使用します。
minInstances
このプロパティは設定しないでください。
name
EJBモジュールの名前を指定します。EJBアーカイブにパッケージされている、J2EE標準のEJBデプロイメント・ディスクリプタ(ejb-jar.xml
)のassemblyセクションのEJBモジュール名と一致するようにします。
resourceAdapter
このBeanで使用するためにコネクション・ファクトリが作成するリソース・アダプタの名前を指定します。この値はorion-ra.xml
(OC4J固有のリソース・アダプタ・ディスクリプタ)で定義されます。
subscriptionName
Beanがトピックを表す場合に、トピック・サブスクリプション名を指定します。
transactionTimeout
すべてのコンテナ管理トランザクションMDBのトランザクション・タイムアウト間隔(秒)を設定します。デフォルトは86400
秒(1日)です。この時間内に完了しないトランザクションはロールバックされます。
各プロパティはoracle-webservices.xml
ディスクリプタの要素属性にマップされます。
次のプロパティは、アーカイブと一緒にデプロイされるすべてのWebサービスに適用されます。
contextRoot
公開されたWebサービスのコンテキスト・ルートを指定します。これは、EJB 2.1 Webサービスのみで必要です。コンテキスト・ルートを指定しない場合、EJB JARファイル名から.jar
拡張子を除いたものがデフォルトでサーバーになります。たとえば、foo-ejb.jar
がコンテキスト・ルート/foo-ejb
に変換されます。
JavaクラスWebサービスでは、コンテキスト・ルートは、親アプリケーションのapplication.xml
ディスクリプタに指定されたコンテキスト・ルートから導出されます。
次のプロパティは、デプロイ中のアーカイブに含まれるWebサービスに適用されます。
downloadExternalImports
関連するインポートをダウンロードして、絶対URLに解決するかどうかを指定します。true
に設定すると、resolveRelativeImports
も自動的にtrue
に設定されます。デフォルトはfalse
です。
exposeTestpage
true
に設定すると、テスト・ページが公開されます。デフォルトはtrue
です。
exposeWsdl
true
に設定すると、Webサービスを記述するWSDLファイルが公開されます。デフォルトはtrue
です。
name
Webサービスとして実装されるEJBモジュールについて、Webサービスの名前を定義します。この値は、J2EE標準EJBデプロイメント・ディスクリプタ(ejb-jar.xml
)に定義された名前と一致するようにします。
resolveRelativeImports
true
に設定すると、関連するインポートが強制的に絶対URLに解決されます。downloadExternalImports
がtrue
の場合、このプロパティは自動的にtrue
に設定されます。
wsdlFileFinalLocation
Webサービスを記述する最終更新済WSDLのURIを指定します。
wsdlPublishLocation
exposeWsdl
がtrue
に設定されている場合に、WSDLのURIを指定します。
JARファイルまたはCARファイルにパッケージされたアプリケーション・クライアントをデプロイするときに設定できるOC4J固有のプロパティを、次に詳しく示します。各プロパティはorion-application-client.xml
ディスクリプタの要素属性にマップされます。
clientInvocationMappings
OC4Jコンテナの起動時に起動するクライアント・モジュールを構成します。
autoStart
: true
に設定すると、OC4Jの起動時にクライアントが起動されます。デフォルトはfalse
です。このプロパティをtrue
に設定する場合、user
プロパティをanonymous
に設定する必要があります。
user
: クライアントがユーザーとして実行する場合の一意のユーザーID。autoStart
プロパティをtrue
に設定する場合、user
プロパティをanonymous
に設定する必要があります。
path
: クライアントJARファイルのパス。絶対パス、または親アプリケーションのルートに対する相対パスとして指定します。
arguments
: 起動時にクライアントのmain()
メソッドに渡す1つ以上の文字列引数。
mailSessions
メールセッション・リソースの構成を指定します。
description
: リソースの説明(オプション)。
location
: メールセッションをバインドするJNDI名。
smtpHost
: 使用するSMTPホストの名前またはIPアドレス(SMTPを使用する場合)。
username
: リソースにログインするために使用するユーザー名(必要な場合)。
password
: リソースにアクセスするために使用するパスワード。
properties
: メールセッションに名前/値ペアとして渡すその他のプロパティを指定できます。次に例を示します。
name="mail.from" value="mail.sender@server.com name="mail.transport.protocol" value="smtp" name="mail.smtp.from" value="mail.sender@server.com
ejb-ref
クライアントによって使用されるEJBモジュールのホーム・インタフェースへの参照を宣言します。
location
: EJBモジュールがバインドされるJNDIロケーション。
name
: アプリケーション・クライアントによって使用されるEJB参照名。
RARファイルにパッケージされたリソース・アダプタをデプロイするときに設定できるOC4J固有のプロパティを、次に詳しく示します。各プロパティはoc4j-ra.xml
ディスクリプタの要素属性にマップされます。
リソース・アダプタ構成の詳細は、『Oracle Containers for J2EEリソース・アダプタ管理者ガイド』を参照してください。
connectionPools
共有接続プールを定義する1つの名前と1つ以上の名前/値ペアを指定します。有効なプロパティ名を次に示します。
maxConnections
: プール内で許可される最大接続数。値を指定しない場合、接続数の制限はありません。
minConnections
: 最小接続数。0よりも大きい場合、指定した数の接続がOC4Jの初期化時に開かれます。初期化時に必要な情報がないと、OC4Jが接続を開けない場合があります。
たとえば、接続でJNDIルックアップが必要な場合、JNDI情報は初期化が終了するまで得られないため、その接続は作成できません。デフォルト値は0
です。
scheme
: 接続が最大許可数に達したときに、OC4Jが接続リクエストを処理する方法を定義します。次のいずれかの値を指定する必要があります。
dynamic
: 最大数の制限に違反することになっても、OC4Jが新しい接続を作成してアプリケーションに返します。このような制限に違反する接続は、閉じるときには接続プールに返されずに破棄されます。
fixed
: アプリケーションが接続を要求して最大数の制限に達すると、OC4Jが例外を生成します。
fixed_wait
: 使用中の接続がプールに返されるまで、OC4Jがアプリケーションの接続リクエストをブロックします。waitTimeout
が指定された場合、指定時間内に接続が使用可能にならないと、OC4Jが例外をスローします。
waitTimeout
: 接続数がmaxConnectionsを超え、fixed_waitスキームが有効な場合に、接続が使用可能になるまでOC4Jが待機する最長時間(秒)。これ以外の場合では、このプロパティは無視されます。
connectorFactories
インストールされたJ2EE Connector Architecture準拠のリソース・アダプタを定義するプロパティを指定します。
connectionFactoryInterface
: 管理対象接続インスタンスを作成するファクトリの名前(javax.jms.QueueConnectionFactory
など)。
connectorName
: コネクタの名前。
description
: コネクタの短い説明(オプション)。
location
: OC4Jがコネクション・ファクトリをバインドするJNDIロケーション。たとえば、値をeis/myEIS1
に設定すると、アプリケーション・コンポーネントは、JNDIルックアップを使用してロケーションjava:comp/env/eis/myEIS1
でコネクション・ファクトリをルックアップします。
configProperties
: connectionFactoryInterface
に定義されているコネクタ・ファクトリの構成プロパティ。
構成プロパティはコネクタ固有であり、リソース・アダプタにパッケージされたJ2EEデプロイメント・ディスクリプタ(ra.xml
)の<config-property>
要素で定義されます。JCA 1.0リソース・アダプタでは、<config-property>
要素は<resourceadapter>
要素のサブ要素です。JCA 1.5では、<connection-definition>
要素内にあります。
connectionPooling
: 使用する接続プールを定義するプロパティを指定します。プロパティを次に示します。
use
: 接続プールをコネクション・ファクトリで使用するかどうかを指定します。また、使用する場合は、共有プールとプライベート・プールのどちらを使用するかを指定します。この属性で指定可能な文字列値を次に示します。
shared
: このコネクション・ファクトリ構成で使用する共有接続プール。
private
: properties
フィールド(後続のprincipalMappingInterfaceの説明を参照)に定義されたプライベートの非共有接続プールが、このコネクション・ファクトリ構成で使用されます。
none
: このコネクション・ファクトリ構成では、接続プーリングが無効になります。
log
: このコネクタに対してOC4Jで生成されるログ・ファイルのパス。パス名を指定しない場合、またはディレクトリが存在しない場合、ロギングは有効になりません。たとえば、./logConnFctry1.log
と指定します。
securityConfig
: 使用するセキュリティ・メカニズムと、それに対応する資格証明情報(コネクタがEISにアクセスするために必要)を指定します。
use
: 使用するセキュリティ・メカニズム。1つしか指定できません。有効な値は、jaasModule
、principalMappingEntries
またはprincipalMappingInterface
です。
jaasModule
: 使用するJAASアプリケーションの名前(JAASを使用する場合)。
principalMappingEntries
: プリンシパル・マッピング・エントリ・メカニズムを使用する場合は、次のプロパティを指定します。
defaultMapping
: デフォルトのリソース・プリンシパルについて、リソースのユーザー名とパスワードを指定します。このプリンシパルは、現行の開始プリンシパルに対応する開始ユーザーを含むプリンシパル・マッピング・エントリがない場合に、EISにログインするために使用されます。
principalMappingEntries
: 開始プリンシパルのユーザー名と、リソースのユーザー名とパスワードを指定します。これにより、開始プリンシパルが、EISへのログインに使用するリソース・プリンシパルとパスワードにマップされます。
principalMappingInterface
: OC4J固有のプログラム的なコンテナ管理サインオン・メカニズムを使用する場合は、次のプロパティを指定します。このメカニズムでは、oracle.j2ee.connector.PrincipalMapping
インタフェースを実装するクラスが利用されます。
implClass
: oracle.j2ee.connector.PrincipalMapping
インタフェースを実装するクラス。このクラスを含むJARファイルは、解凍したRARファイルを含むディレクトリに置く必要があります。
properties
: ログインに使用するユーザー名とパスワード。
xaRecoveryConfig
: 2フェーズ・コミット・トランザクション・リカバリにおいて、EISにログインする特権ユーザーのユーザー名とパスワード。