| Oracle Containers for J2EE Enterprise JavaBeans開発者ガイド 10g(10.1.3.1.0) B31852-03 |
|
この章では、OC4Jアプリケーションで使用できる次のような様々なデプロイメント・ディスクリプタ・ファイルの構成方法を説明します。
詳細は、「EJBデプロイメント・ディスクリプタ・ファイルについて」を参照してください。
この項の内容は次のとおりです。
詳細は、「ejb-jar.xmlファイルとは」を参照してください。
EJB 2.1の場合のみ、移行時にejb-jar.xmlファイルを自動的に生成できます(「TopLink EJB 2.1永続性マネージャへの移行」を参照)。生成後に、TopLink Workbenchを使用して、このファイルをカスタマイズおよび再エクスポートできます(「TopLink Workbenchの使用方法」を参照)。
1つ以上のアノテーションのあるEJB 3.0アプリケーションのデプロイ時に、OC4Jはそのメモリー内のejb-jar.xmlファイルをデプロイ・ディレクトリ内のorion-ejb-jar.xmlファイルと同じ場所(<ORACLE_HOME>/j2ee/home/application-deployments/)に書き込みます。
my_application/META-INF
このejb-jar.xmlファイルは、アノテーションとデプロイ済ejb-jar.xmlファイル(存在する場合)の両方から取得された構成を表します。
JDeveloperを使用して、ejb-jar.xmlファイルを生成および更新できます。
詳細は、「JDeveloperの使用方法」を参照してください。
toplink-ejb-jar.xmlファイルは、TopLink JPAプレビュー永続性プロバイダを使用している場合にのみ適用されます。
|
注意 OC4Jでは、TopLink Essentials JPA永続性プロバイダがデフォルトで使用されます。この場合、TopLink JPA拡張を使用して、TopLinkディスクリプタレベルのオプション(マッピングを含む)を構成できます(「TopLink Essentials JPA永続性を使用したTopLink APIへの実行時アクセス」を参照)。 |
この項の内容は次のとおりです。
詳細は、次を参照してください。
EJB 2.1プロジェクトの場合のみ、Orion CMPアプリケーションをTopLink永続性に移行する場合(「TopLink EJB 2.1永続性マネージャへの移行」を参照)、TopLink移行ツールはtoplink-ejb-jar.xmlファイルを自動的に作成します。生成後に、TopLink Mapping Workbenchを使用して、カスタマイズおよび再エクスポートできます(『Oracle TopLink開発者ガイド』の「TopLink Workbench」を参照)。
EJB 3.0プロジェクトでは、エンティティ・クラスで使用しているJDK 1.5言語拡張がアノテーションのみの場合は、TopLink Workbenchを使用してtoplink-ejb-jar.xmlファイルを作成および構成できます。TopLink Workbenchを使用して、このファイルを作成および構成することをお薦めします。
EJB 2.1プロジェクトの場合は、TopLink Workbenchを使用して、toplink-ejb-jar.xmlファイルで永続性プロパティを構成します。Orion CMPアプリケーションをTopLink永続性に移行する場合(「TopLink EJB 2.1永続性マネージャへの移行」を参照)、TopLink移行ツールはTopLink Workbenchプロジェクトを自動的に作成します。TopLink Workbenchプロジェクトを使用してtoplink-ejb-jar.xmlファイルを作成できます。
詳細は、次を参照してください。
OC4J固有のオプションを指定するため、orion-ejb-jar.xmlファイルを作成し、次の適切な要素を構成できます。
詳細は、「orion-ejb-jar.xmlファイルとは」を参照してください。
ejb3-toplink-sessions.xmlファイルは、TopLink JPAプレビュー永続性プロバイダを使用している場合にのみ適用されます。
|
注意 OC4Jでは、TopLink Essentials JPA永続性プロバイダがデフォルトで使用されます。この場合、TopLink JPA拡張を使用して、TopLinkセッションレベルのオプションを構成できます(「TopLink Essentials JPA永続性を使用したTopLink APIへの実行時アクセス」を参照)。 |
この項の内容は次のとおりです。
詳細は、「ejb3-toplink-sessions.xmlファイルとは」を参照してください。
EJB 3.0アプリケーションでは、エンティティ・クラスで使用しているJDK 1.5言語拡張がアノテーションのみの場合は、TopLink Workbenchを使用してejb3-toplink-sessions.xmlファイルを作成および構成できます。TopLink Workbenchを使用して、このファイルを作成および構成することをお薦めします。
詳細は、次を参照してください。
この項の内容は次のとおりです。
詳細は、「persistence.xmlファイルとは」を参照してください。
例26-1に、1つの永続性ユニットを含むpersistence.xmlファイルの例を示します。
<persistence-unit name="OrderManagement5">
<provider>com.acme.persistence</provider>
<transaction-type>RESOURCE_LOCAL</transaction-type>
<mapping-file>order1.xml</mapping-file>
<jar-file>order.jar</jar-file>
<class>com.acme.Order</class>
<properties>
<property name="com.acme.persistence.sql-logging" value="on"/>
</properties>
</persistence-unit>
この永続性ユニットはOrderManagement5という名前で、EntityManagerプロバイダcom.acme.persistenceを使用します。その<transaction-type>では、この永続性ユニットでJTA以外のデータソースのみが必要とされるよう指定します。<mapping-file>、<jar-file>、<class>の要素をすべて使用して永続管理クラスの設定を定義します
(「この永続性ユニットに含まれる永続管理クラス」を参照)。<property>要素を使用して、プロパティcom.acme.persistence.sql.loggingを値onに設定します。
<persistence-unit>要素の属性およびサブ要素の詳細は、EJB 3.0の仕様を参照してください。
次の1つ以上を使用して、永続性ユニットに関連付けられている永続管理クラスを指定できます。
<mapping-file>要素: 1つ以上のオブジェクト・リレーショナル・マッピングXMLファイル(orm.xmlファイル)を指定します。
<jar-file>要素: クラスを検索する1つ以上のJARファイルを指定します。
<class>要素: クラスの明示的なリストを指定します。
永続性ユニットのルートは、META-INFディレクトリにpersistence.xmlファイルを含むJARファイルまたはディレクトリです。管理永続性クラスを除外するには、永続性ユニットに<exclude-unlisted-classes>要素を追加します。
OC4Jのデフォルトの永続性ユニットを使用すると、永続性ユニットを名前で指定しなくてもエンティティ・マネージャを取得できます(「OC4Jの永続性ユニットのデフォルトについて」を参照)。
デフォルトでは、OC4Jのデフォルト永続性ユニットを使用するために、persistence.xmlファイルをデプロイする必要は一切ありません。
orion-ejb-jar.xmlファイルの属性disable-default-persistent-unitをtrueに設定した場合、OC4Jはpersistence.xmlファイルを必要とします。この場合も、空の永続性ユニットを指定する場合にOC4Jのデフォルトの永続性ユニットを使用できます。persistence.xmlファイルは、次のいずれかを使用して空の永続性ユニットで構成します。
有効範囲またはモジュールごとに1つの永続性ユニットを指定できます(EJB JARごとに1つなど)。
Java EEアプリケーションでは、例26-2に示すように、<jta-data-source>要素でデータソースを指定します。詳細は、第20章「データソースの構成」を参照してください。
Java SEアプリケーションでは、例26-3に示すように、JDBCベンダー拡張を使用してデータソースを指定します。詳細は、「JDBC用のTopLink JPA拡張(Java SE)」を参照してください。
または、OC4Jを通じて、デフォルトのデータソースを使用できます(「デフォルトのデータソース」を参照)。
この項では、永続性ユニットに定義できる次のようなTopLink JPAベンダー拡張について説明します。
これらのベンダー拡張を指定するには、persistence.xmlファイルの<properties>要素を使用します。例26-2に、Java EEアプリケーションでpersistence.xmlファイルにTopLink JPA永続性ユニットの拡張を設定する方法を示し、例26-3に、Java SEアプリケーションで同じ拡張を設定する方法を示します。
<persistence-unit name="default" transaction-type="JTA">
<provider>
oracle.toplink.essentials.PersistenceProvider
</provider>
<jta-data-source>
jdbc/MyDataSource
</jta-data-source>
<properties>
<property name="toplink.logging.level" value="INFO"/>
</properties>
</persistence-unit>
例26-3 persistence.xmlファイルでのベンダー拡張の構成(Java SE)
<persistence-unit name="default" transaction-type="RESOURCE_LOCAL">
<provider>
oracle.toplink.essentials.PersistenceProvider
</provider>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="toplink.logging.level" value="INFO"/>
<property name="toplink.jdbc.driver" value="oracle.jdbc.OracleDriver"/>
<property name="toplink.jdbc.url" value="jdbc:oracle:thin:@myhost:l521:MYSID"/>
<property name="toplink.jdbc.password" value="tiger"/>
<property name="toplink.jdbc.user" value="scott"/>
</properties>
</persistence-unit>
または、例26-4に示すように、TopLink JPA永続性ユニットの拡張をプロパティのMapに設定し、javax.persistence.PersistenceのメソッドcreateEntityManagerFactoryへのコールに渡すことができます。この方法で、persistence.xmlファイルに設定された拡張をオーバーライドできます。プロパティのMapに拡張を設定する場合、次のようなoracle.toplink.essentials.configの適切な構成クラスのpublic static finalフィールドを使用してその値を設定できます。
例26-4に、CacheType構成クラスを使用して拡張toplink.cache.type.defaultの値を設定する方法を示します。
import oracle.toplink.essentials.config.CacheType;
Map properties = new HashMap();
properties.put(TopLinkProperties.CACHE_TYPE_DEFAULT, CacheType.Full);
EntityManagerFactory emf = Persistence.createEntityManagerFactory("default", properties);
表26-1に、JDBCドライバ・パラメータを構成するためにpersistence.xmlファイルに定義できるTopLink JPA拡張をリストします。これらの拡張は、EJBコンテナの外部で使用する場合にのみ適用されます。
表26-2に、TopLinkキャッシュを構成するためにpersistence.xmlファイルに定義できるTopLink JPA拡張をリストします。
詳細は、『Oracle TopLink開発者ガイド』のキャッシュの理解に関する項を参照してください。
表26-3に、TopLinkロギングを構成するためにpersistence.xmlファイルに定義できるTopLink JPA拡張をリストします。
詳細は、『Oracle TopLink開発者ガイド』の「ロギングの構成」を参照してください。
表26-4に、データベース、セッションおよびアプリケーション・サーバー用のTopLink拡張を構成するためにpersistence.xmlファイルに定義できるTopLink JPA拡張をリストします。
表26-5に、TopLinkのカスタマイズおよび検証を構成するためにpersistence.xmlファイルに定義できるTopLink JPA拡張をリストします。
表26-6に、スキーマ生成を構成するためにpersistence.xmlファイルに定義できるTopLink JPA拡張をリストします。
|
![]() Copyright © 2002, 2008 Oracle Corporation. All Rights Reserved. |
|