この章では、次のタイプのアプリケーションのためにデプロイ・ファイルを作成するときに必要となるTopLink情報について説明します。
パッケージ化およびデプロイの詳細は、次を参照してください。
デプロイするアプリケーションのタイプに応じて、次のいずれかのデプロイ・ファイルを作成する必要があります。
TopLink Workbenchでは、TopLink Workbenchプロジェクトからデプロイ・ファイルを作成できます(「プロジェクト情報のエクスポート」を参照)。プロジェクトの作成後、デプロイ・ファイルを作成するには2種類の方法があります。
コンパイルが不要なXMLデプロイ・ファイルを作成する方法。
Javaソース・ファイルを作成する方法。この場合、TopLink Workbenchを使用せずにコンパイルとデプロイを行います。
XMLファイルはコンパイル済のJavaファイルよりもデプロイとトラブルシューティングが簡単であるため、デプロイ方法としてはXMLによるデプロイをお薦めします。この方法では、安全かつ簡単に変更を行うことのできる非常に柔軟な構成が得られます。XMLデプロイ・ファイルは、サード・パーティのアプリケーションやコンパイラがなくても、正常にデプロイできます。
project.xmlファイルは、アプリケーションの中心です。このファイルには、定義したマッピングとディスクリプタ、およびプロジェクトに関連付けられた名前付き問合せまたはファインダが含まれています。
この項の内容は次のとおりです。
10gリリース3(10.1.3.1.0)以降、project.xmlでは、旧Document Type Definition(DTD)のかわりに、XMLスキーマ・ファイル形式(XSDファイル)を使用します。XSDファイルでは、要素および属性を定義するのみでなく、要素および属性を有効なXMLファイル内で使用する方法を決定します。XSDファイルは標準XMLとして書式設定され、Oracleネームスペースに完全準拠します。TopLinkは、現行XSD形式と旧DTD形式の両方を読み取ることができますが、書き込むことができるのは現行XSD形式のみです。
以前の形式は、DTDでのみ定義されています。現行リリースでは、次のXMLスキーマに基づいてデプロイXMLファイルを生成できます。
object-persistence_1_0.xsd: このスキーマは、永続性およびマッピングの一般的な概念を定義します。
toplink-object-persistence_10_1_3.xsd: このスキーマは、前述の一般的な概念を拡張して、TopLink固有データを追加で含んでいます。
詳細は、<TOPLINK_HOME>\config\xsdsディレクトリにある当該のXSDを参照してください。XSDファイルは、OTNでも入手できます。
CMP以外のアプリケーションでは、プロジェクト・メタデータをproject.xmlファイルで定義します。
project.xmlファイルは、プロジェクト・メタデータの構成、変更およびトラブルシューティングを行うための単純で柔軟な方法を提供します。project.xmlファイルにはこのような属性があるため、TopLinkプロジェクトの構成にはこのファイルの使用をお薦めします。TopLink Workbenchには、project.xmlファイルを作成および編集するためのグラフィック・ツールが用意されています。TopLink Workbenchを使用したプロジェクト作成の詳細は、「TopLink Workbenchを使用したproject.xmlの作成」を参照してください。
CMPアプリケーションでは、プロジェクト・メタデータの指定方法は、アプリケーションをデプロイするJ2EEアプリケーション・サーバーに依存します(「toplink-ejb-jar.xmlファイル」を参照)。
project.xmlファイルはアプリケーションに関連付けられたクラスおよびデータ・ソースと同期化する必要があるため、手動で変更しないでください。同期化を正しく行うことができるTopLink Workbenchは、プロジェクトを変更するために最適な方法です。TopLink Workbenchでプロジェクトを変更し、project.xmlファイルを再デプロイするだけです。このオプションを使用することで、プロジェクトが変更されるたびにJavaコードを再生成およびコンパイルする必要性をなくして、デプロイの時間を短縮します。
デプロイXML情報のエクスポートに関する詳細は、「プロジェクト情報のエクスポート」を参照してください。
|
注意: このファイルにproject.xml以外の名前を付けてもかまいません。ただし、ここでは、説明をわかりやすくするため、ファイル名を変更しないものとしています。 |
オプションとして、DeploymentXMLGenerator APIを使用して、次のいずれかの方法でプログラムによりproject.xmlを生成できます。
アプリケーションから、DeploymentXMLGeneratorとJavaソースをインスタンス化します。次のメソッドをコールします。
generate (<MW_Project.mwp>, <output file.xml>)
コマンドラインから、次のコマンドを使用します。
java -classpath toplink.jar;toplinkmw.jar;xmlparserv2.jar;ejb.jar; oracle.toplink.workbench.external.api.DeploymentXMLGenerator <MW_Project.mwp> <output file.xml>
どちらの方法を使用する場合も、クラスパスに<ORACLE_HOME>\toplink\configディレクトリが含まれていることを事前に確認してください。
各TopLinkプロジェクトは、TopLinkのセッションに属します。セッションは、アプリケーションがTopLink機能にアクセスするときに使用するファサードです(セッションに関する詳細は、第XV部「TopLinkセッション」を参照してください)。セッションを定義する場所は、アプリケーションがCMPを使用するかどうかに応じて異なります。
この項の内容は次のとおりです。
10gリリース3(10.1.3.1.0)以降、sessions.xmlでは、旧Document Type Definition(DTD)のかわりに、XMLスキーマ・ファイル形式(XSDファイル)を使用します。この変更により、XSDを使用することによるすべての利点が得られるのみでなく、TopLinkランタイム環境がsessions.xmlファイルのロードおよび検証時により優れた診断を提供できるようになりました。
XSDファイルは、OTNでも入手できます。http://www.oracle.com/technology/oracleas/schema/sessions_10_1_3.xsd
XSDで書式設定されたsessions.xmlファイルを使用すると、TopLinkランタイムは、sessions.xmlファイルの検証とセッションのインスタンス化を分離して行います。XMLファイルの書式設定の問題とセッション・マネージャによるセッションのインスタンス化の問題を分離できることで、トラブルシューティングが簡単になります。例8-1で示されているように、検証時にスローされる例外により、失敗が無効なsessions.xmlファイルに起因することが明確に示されます。
Exception [TOPLINK-9010] (Oracle TopLink - 10g (10.0.3)(Build 040127Dev)): oracle.toplink.exceptions.SessionLoaderException Exception Description: A End tag does not match start tag 'session'. was thrown while parsing the XML file against the XML schema. Internal Exception: oracle.xml.parser.v2.XMLParseException: End tag does not match start tag 'session'.
CMP以外のアプリケーションでは、セッションをsessions.xmlファイルで定義します。
sessions.xmlファイルは、アプリケーション・セッションの構成、変更およびトラブルシューティングを行うための単純で柔軟な方法を提供します。sessions.xmlファイルにはこのような属性があるため、TopLinkプロジェクトの構成にはこのファイルの使用をお薦めします。TopLink Workbenchには、sessions.xmlファイルを作成および編集するためのグラフィック・ツールが用意されています。TopLink Workbenchを使用したセッション作成の詳細は、第73章「セッションの作成」を参照してください。
CMPプロジェクトでは、セッション・メタデータの指定方法は、アプリケーションをデプロイするJ2EEアプリケーション・サーバーに依存します。
OC4Jでは、セッション構成は、orion-ejb-jar.xmlファイルで行われます。データ・ソース、共通のセッションのオプションの一部およびセッション・カスタマイザ・クラスを指定できます(「OC4Jおよびorion-ejb-jar.xmlファイル」を参照)。この場合、TopLinkプロジェクトXMLファイルをtoplink-ejb-jar.xmlと命名します(「project.xmlファイル」を参照)。
BEA WebLogic Serverでは、セッション構成は、toplink-ejb-jar.xmlファイルで行われます。データ・ソース、共通のセッションのオプションの一部およびセッション・カスタマイザ・クラスを指定できます(「toplink-ejb-jar.xmlファイル」を参照)。
IBM WebSphere Application Serverでは、セッション構成は、toplink-ejb-jar.xmlと命名する必要のあるsessions.xmlファイルで行われます(第73章「セッションの作成」を参照)。
各EJBモジュールには、モジュールに含まれるすべてのEJBを記述する1つのejb-jar.xmlファイルが含まれています。
ほとんどのIDEには、ejb-jar.xmlファイルを作成する機能が用意されています。IDEからのこのファイルの生成の詳細は、IDEのドキュメントを参照してください。
EJBアプリケーションを構築する場合、TopLink Workbenchでejb-jar.xmlファイルを作成することをお薦めします。TopLink Workbenchではejb-jar.xmlファイルの読取りと書込みの両方が可能なため、次のような方法で、TopLink Workbenchを使用してejb-jar.xmlファイルをメンテナンスできます。
TopLink Workbenchを使用せずにファイルを手動で変更した場合、ejb-jar.xmlファイルをTopLink Workbenchプロジェクトに再インポートしてプロジェクトをリフレッシュします。
TopLink Workbenchプロジェクトを変更して保存すると、TopLink Workbenchにより、ejb-jar.xmlファイルが自動的に更新されます。
TopLink Workbenchにおけるejb-jar.xmlファイルの管理の詳細は、「ejb-jar.xmlファイルの使用」を参照してください。
<J2EE-Container>-ejb-jar.xmlファイルの内容は、EJBのデプロイ先となるコンテナによって異なります。このファイルを作成するには、コンテナ付属のツールを使用します。
ほとんどの場合、<J2EE-Container>-ejb-jar.xmlファイルは変更せずにTopLinkに統合できます。ただし、場合によっては、いくつかのTopLink固有の変更を行う必要があります。
詳細は、次を参照してください。
表8-1は、orion-ejb-jar.xmlファイルを変更できるシナリオをまとめたものです。
表8-1 orion-ejb-jar.xmlファイルを変更できるシナリオ
| CMPタイプ | マッピング・タイプ | アクション |
|---|---|---|
|
Orion |
|
|
|
Orion |
デフォルト・マッピング |
|
|
Toplink |
|
|
|
Toplink |
|
|
|
Toplink |
デフォルト・マッピング( |
|
orion-ejb.jar.xmlファイルの構成に関する詳細は、「orion-ejb-jar.xmlファイルのOC4J用の構成」を参照してください。
weblogic-ejb-jar.xmlの構成に関する詳細は、「weblogic-ejb-jar.xmlファイルのBEA WebLogic Server用の構成」を参照してください。
toplink-ejb-jar.xmlファイルは、CMPプロジェクトでのみ使用されます。TopLinkランタイムは、<J2EE container>-ejb-jar.xmlファイル(「<J2EE-Container>-ejb-jar.xmlファイル」を参照)に設定されたプロパティを使用して、toplink-ejb-jar.xmlファイルを見つけ、読み取ります。
toplink-ejb-jar.xmlファイルの用途は、使用しているアプリケーション・サーバーのタイプによって異なります。
CMPアプリケーションをOC4Jにデプロイする場合、toplink-ejb-jar.xmlファイルがproject.xmlファイルに使用される名前です。
この場合、toplink-ejb-jar.xmlファイルを作成するには、単にproject.xmlファイルの名前を変更します。詳細は、「project.xmlファイル」を参照してください。
CMPアプリケーションをBEA WebLogic Serverにデプロイすると、toplink-ejb-jar.xmlファイルにはproject.xmlファイルへの参照が追加されます。
例8-2は、典型的なBEA WebLogic Server toplink-ejb-jar.xmlファイルを示しています。
例8-2 BEA WebLogic Server toplink-ejb-jar.xmlファイル
<?xml version="1.0"?>
<!DOCTYPE toplink-ejb-jar PUBLIC "-//Oracle Corp.//DTD TopLink CMP WebLogic 10.0.3 Developer Preview//EN" "toplink-wls-ejb-jar_10_0_3.dtd">
<toplink-ejb-jar>
<session>
<name>ejb20_EmployeeDemo</name>
<project-xml>Employee.xml</project-xml>
<login>
<datasource>jdbc/JTSTopLinkDS</datasource>
<non-jts-datasource>jdbc/TopLinkDS</non-jts-datasource>
</login>
<customization-class>
oracle.toplink.demos.ejb.cmp.wls.employee.EmployeeCustomizer
</customization-class>
</session>
</toplink-ejb-jar>
BEA WebLogic Serverでは、TopLinkマッピングおよびランタイム構成のデプロイ・カスタマイズを許可するために使用される、(oracle.toplink.ejb.cmp.DeploymentCustomizationインタフェースを実装する)オプションのデプロイ・カスタマイズ・クラスを指定できます。例8-2では、デプロイ・カスタマイズ・クラス名は、EmployeeCustomizerとなります。このデプロイ・カスタマイズ・クラスは、そのパッケージ名で完全修飾され、デプロイJARに含まれている必要があります。
デプロイ時、TopLinkランタイムは、このクラスの新しいインスタンスを作成し、そのメソッドbeforeLoginCustomization(セッションへのTopLinkランタイムのログイン前)およびafterLoginCustomization(セッションへのTopLinkランタイムのログイン後)を、パラメータとしてTopLinkセッションに渡して起動します。
beforeLoginCustomizationメソッドの実装を使用して、pm-propertiesによってサポートされていない次のようなセッション属性を構成します。
キャッシュ・コーディネーション
パラメータ使用のSQL
ネイティブSQL
バッチ書込みとバッチ・サイズ
バイト配列とバイト列バインディング
EISログイン
イベント・リスナー
表修飾子
順序付け
例8-2には、<non-jts-datasource>要素が含まれます。この要素の使用は、BEA WebLogic Serverのtoplink-ejb-jar.xmlに限定されません。Java Transaction API(JTA)でキャッシュ・コーディネーションを使用する場合には、常にTopLink Workbenchを通じてこの要素を構成する必要があります(「非トランザクション読取りログインの構成」を参照)。これにより、TopLinkでは、順序付けの割当てに対してコンテキスト外の読取り操作と最適化を実行できます(「外部管理トランザクション・データ・ソース」を参照)。
セッション構成の詳細は、第74章「セッションの構成」を参照してください。
CMPアプリケーションをIBM WebSphere Application Serverにデプロイすると、toplink-ejb-jar.xmlファイルがsessions.xmlファイルに使用される名前となり、project.xmlファイルへの参照が追加されます。
この場合、toplink-ejb-jar.xmlファイルを作成するには、単にsessions.xmlファイルの名前を変更します。詳細は、「sessions.xmlファイル」を参照してください。
Javaアプリケーションでは、TopLinkはデプロイのためにJ2EEコンテナを使用しません。かわりに、自身のメカニズムを利用して、機能と永続性を提供します。このタイプのアプリケーションの重要な要素は、J2EEコンテナを使用しないこと、およびアプリケーションJARファイルをクラスパスに配置することによりアプリケーションをデプロイするということです。
Javaアプリケーションは、次のデプロイ・ファイルを必要とします。
多くの設計者は、JSPとJavaサーブレットを使用したTopLinkアプリケーションを構築します。このタイプの設計では、通常、Webベースのアプリケーションがサポートされます。
JSPおよびサーブレット・アプリケーションは、次のデプロイ・ファイルを必要とします。
通常、セッションBeanはプロセス、オペレーションまたはサービスをモデル化するものであるため、永続的ではありません。TopLinkとの対話をセッションBeanにラップするTopLinkアプリケーションを構築できます。セッションBeansは、TopLink関連のオペレーションすべてをクライアントのかわりに実行します。このタイプの設計では、JTSおよび外部管理トランザクションを使用しますが、CMPアプリケーション関連のオーバーヘッドは発生しません。また、セッションBeanアプリケーションはスケーラビリティに優れ、簡単にデプロイできます。
セッションBeanアプリケーションは、次のデプロイ・ファイルを必要とします。
多くのアプリケーションは、J2EEコンテナの提供する永続性メカニズムを使用します。TopLinkでは、このタイプのアプリケーションが完全にサポートされています。
JARファイルに含まれるコンテナ管理の永続性を備えたすべてのエンティティBeanに対して、ただ1つの永続性マネージャのみを使用できます。
CMPアプリケーションは、次のデプロイ・ファイルを必要とします。
BMPを使用する独自の永続性コードを記述する場合は、oracle.toplink.ejb.bmpパッケージのクラスを利用できます。これらクラスの使用の有無にかかわらず、BMPアプリケーションは、次のデプロイ・ファイルを必要とします。
TopLinkアプリケーションをOC4J 10gリリース3(10.1.3.1.0)以上にデプロイするには、orion-ejb-jar.xmlファイルを次に記載の説明に従って変更します。
アプリケーションをOC4Jの以前のリリースから移行する場合、TopLink移行ツールを使用して、orion-ejb-jar.xmlファイルから新しいtoplink-ejb-jar.xmlに永続性情報を自動的に移行できます。詳細は、「OC4J TopLinkの永続性へのOC4J Orionの永続性の移行」を参照してください。
10gリリース3(10.1.3.1.0)のデフォルト永続性マネージャであるTopLinkをOC4J永続性マネージャとして使用している場合、persistence-managerのサブエントリ(表8-2を参照)をorion-ejb-jar.xmlファイルに構成できます。orion-ejb-jar.xmlファイルを変更するシナリオの詳細は、「OC4Jおよびorion-ejb-jar.xmlファイル」を参照してください。
OC4J永続性マネージャとしてTopLinkを使用していない場合、persistence-managerのサブエントリは変更しないでください。
OC4J 10gリリース3(10.1.3.1.0)以上では、entity-deployment属性のpm-nameをサポートしていません。このかわりとして、persistence-managerの属性nameを使用してください(表8-2を参照)。OC4Jがorion-ejb.jar.xmlファイルを解析したとき、pm-name属性が発見されると、OC4Jはその値を無視して、次の警告メッセージを記録します。
|
警告:
|
表8-2 orion-ejb-jar.xmlファイルのpersistence-managerのエントリ
| エントリ | 説明 |
|---|---|
|
|
使用する永続性マネージャの名前。この値を
|
|
この属性は構成しないでください。 |
|
|
このプロパティは、 TopLinkマッピング・メタデータをデプロイXMLファイルにエクスポートする場合は、このプロパティをデプロイXMLファイルの名前(デフォルト: マッピング・メタデータ・ファイルのかわりにTopLinkプロジェクト・クラスを使用する場合は、このプロパティを設定しないでください(表8-3の |
永続性マネージャとしてTopLinkを選択した場合(表8-2のnameを参照)、persistence-managerのpm-properties用サブエントリ(表8-3を参照)を使用し、TopLinkセッションが、TopLinkランタイムによってCMPプロジェクトのために内部で作成および使用されるように構成しておきます。persistence-managerのサブエントリは、CMPプロジェクトのsessions.xmlファイルのかわりになります。
|
注意: セッション機能のサブセットを構成できるのはこれらのプロパティを使用した場合のみで、多くの場合、デフォルトの構成が適用されます。すべてのセッション機能を構成しデフォルトをオーバーライドするには、カスタマイズ・クラスを使用する必要があります(表8-3のcustomization-classを参照)。 |
表8-3 orion-ejb-jar.xmlファイルのpersistence-managerのサブエントリ
| エントリ | 説明 |
|---|---|
|
|
TopLinkで永続化されたこのEJBデプロイJARファイルの一意の名前。このアプリケーション・サーバー・インスタンスに含まれる、TopLinkによって永続化されたデプロイ済JARファイルすべてにおいて、一意とする必要があります。 TopLinkランタイムが、TopLinkで永続化されたデプロイ済JARファイルのTopLinkセッションを内部で作成すると、TopLinkセッション・マネージャはこの 名前を指定しないと、TopLinkランタイムは一意の名前を生成します。 |
|
|
TopLinkマッピング・メタデータをJavaクラスにエクスポート(して マッピング・メタデータ・ファイルを使用している場合、このプロパティは設定しないでください(表8-2の |
|
TopLinkマッピングおよびランタイム構成のデプロイ・カスタマイズを許可するために使用されるオプションのJavaクラス(
クラスは、そのパッケージ名で完全修飾され、デプロイJARファイルに含まれている必要があります。 |
|
|
特定のデータベースに固有のTopLinkサポートを含む、オプションのTopLinkデータベース・プラットフォーム・クラス( この値は、アプリケーションが使用しているデータベースに対応するデータベース・プラットフォーム・クラスに設定します。クラスは、そのパッケージ名で完全修飾されている必要があります。 |
|
|
リモート・オブジェクト間のリレーションシップを可能にするオプション・フラグ。有効な値は次のとおりです。
|
|
|
「cache-synchronizationのプロパティの構成」を参照してください。 |
|
|
「default-mappingのプロパティの構成」を参照してください。 |
TopLinkを永続性マネージャとして選択した場合(表8-2のnameを参照)、pm-propertiesのcache-synchronization用サブエントリ(表8-4を参照)を使用し、セッションのTopLinkキャッシュ・コーディネーション機能を構成して、TopLinkランタイムによってCMPプロジェクトのために内部で使用されるようにします。TopLinkキャッシュ・コーディネーションに関する詳細は、「キャッシュ・コーディネーションの概要」を参照してください。
このサブエントリが存在している場合、キャッシュ・コーディネーションの構成を実行する際に、カスタマイズ・クラスを使用する必要があります(表8-3のcustomization-classを参照)。TopLinkキャッシュ・コーディネーションの構成に関する詳細は、第88章「コーディネート・キャッシュの構成」を参照してください。
表8-4 orion-ejb-jar.xmlファイルのpm-propertiesのcache-synchronization用サブエントリ
| エントリ | 説明 |
|---|---|
|
|
キャッシュ・コーディネーション更新を他のサーバーに同期または非同期のいずれで伝播するかを示すインジケータ。有効な値は次のとおりです。
|
|
|
JMSによってコーディネートされるキャッシュ用: Oracle Application Server Containers for J2EE(OC4J)JNDIネーミング・サービスを使用することと、コーディネートされたキャッシュにあるすべてのホストがOC4J固有のRMIプロトコルであるORMIを使用して通信できることを前提として、次のようなURLを使用します。 ormi://<JMS-host-IP>:<JMS-host-port> ここで、 RMIまたはCORBAによってコーディネートされるキャッシュ用: OC4J JNDIネーミング・サービスを使用することと、コーディネートされたキャッシュにあるすべてのホストがOC4Jのデフォルト・ポートである23791でOC4J固有のRMIプロトコルであるORMIを使用して通信できることを前提として、次のようなURLを使用します。 ormi://<session-host-IP>:23791 ここで、 |
|
|
JNDIネーミング・サービスにログインするために必要となる、オプションのユーザー名。 |
TopLinkを永続性マネージャとして選択した場合(表8-2のnameを参照)、pm-propertiesのdefault-mapping用サブエントリ(表8-5を参照)を使用して、TopLinkのデフォルト・マッピングおよび自動表生成機能を構成します。
TopLinkのデフォルト・マッピングに関する詳細は、「実行時にOC4Jを使用するCMPプロジェクトでのデフォルト・マッピング」を参照してください。
TopLinkの自動表生成に関する詳細は、「データベース表の自動作成」を参照してください。
表8-5 orion-ejb-jar.xmlファイルのpm-propertiesのdefault-mapping用サブエントリ
| エントリ | 説明 |
|---|---|
|
|
マップされるデータベース表を準備するためにTopLinkが実行する内容を決定する、オプションの要素。有効な値は次のとおりです。
この設定は、アプリケーション(EAR)またはシステムのレベルで、自動作成表および自動削除表の構成をオーバーライドします。詳細は、「データベース表の自動作成」を参照してください。 |
|
|
生成された表の名前が一意とするには長さが足りない場合に使用される要素。値は デフォルト・マッピングでは、各エンティティは1つの表にマップされます。唯一の例外は多対多でのマッピングで、この場合、ソースおよびターゲットのエンティティに1つの余分なリレーション表が含まれます。
ただし、同じエンティティが1つのアプリケーションで、または複数のアプリケーションにわたって、複数のJARファイルで定義されていると、表名の衝突は避けられません。 この問題を回避するには、
|
TopLinkアプリケーションをBEA WebLogic Serverにデプロイするには、次で説明されているようにweblogic-ejb-jar.xmlファイルを変更します。
TopLinkがサポートしていないかまたは必要としないweblogic-ejb-jar.xmlのタグは使用しないでください(「weblogic-ejb-jar.xmlファイルのサポートされていないタグ」を参照)。
BEA WEbLogic ServerアプリケーションをOC4Jに移行する場合、TopLink移行ツールを使用して、weblogic-ejb-jar.xmlファイルから新しいtoplink-ejb-jar.xmlに永続性情報を自動的に移行できます。詳細は、「BEA WebLogic永続性のOC4J TopLink永続性への移行」を参照してください。
weblogic-ejb-jar.xmlファイルでは、次のようなサブエントリを持つpersistence-descriptorエントリがBeanごとに必要です。
TopLinkが使用可能であり、使用される必要があることを示すサブエントリを持つpersistence-descriptorエントリを構成します。
WebLogic 6.1(Service Pack 4)にデプロイする場合、persistence-type要素とpersistence-use要素を含めます。どちらの要素にもtype-identifierおよびtype-versionタグが必要です。表8-6はtype-identifierタグのオプションを、表8-7はtype-versionタグのオプションをまとめたものです。
WebLogic 7.0または8.1にデプロイする場合、type-identifierおよびtype-versionタグを持つpersistence-use要素を含めます。表8-6はtype-identifierタグのオプションを、表8-7はtype-versionタグのオプションをまとめたものです。
WebLogic 6.1を使用する場合、要素type-storageをpersistence-type要素に追加し、META-INF\toplink-ejb-jar.xmlに設定します。
WebLogic 7.0または8.1を使用する場合、要素type-storageをpersistence-use要素に追加し、META-INF\toplink-ejb-jar.xmlに設定します。enable-call-by-reference要素をTRUEに設定し、参照呼出しを有効にします。
<weblogic-enterprise-bean>
<ejb-name>AccountBean</ejb-name>
...
<enable-call-by-reference>True</enable-call-by-reference>
...
</weblogic-enterprise-bean>
weblogic-ejb-jar.xmlファイルには、TopLinkでサポートされておらず、必要のない次のような複数のタグが含まれています。
concurrency-strategy: このタグは、WebLogicで特定のBeanに対する同時ユーザーをどのように管理するかを指定するためのものです。TopLinkでは同時アクセスを内部的に管理するため、このタグは不要です。
TopLinkでの同時実行性に関する方針の詳細は、「ロック・ポリシーの構成」を参照してください。
db-is-shared: TopLinkでは、データベース・アクセスの排他性についての仮定を行わないため、このタグは不要です。マルチユーザー・アクセスの問題には、各種ロック・ポリシーとリフレッシュ・ポリシーを通じて対処します。
delay-updates-until-end-of-tx: TopLinkでは、必ず更新をトランザクションの最後まで遅らせるため、このタグは不要です。
finders-load-bean: TopLinkでは、必ずファインダの実行時にBeanをロードするため、このタグは不要です。
pool: TopLinkでは、エンティティBeanに対してプール方式を使用しません。そのため、プールが原因で発生するオブジェクト・アイデンティティの問題が回避されます。
lifecycle: この要素は、プール方式に従うBeanを管理するためのものです。TopLinkではプール方式を使用しないため、このタグは無視されます。
is-modified-method-name: TopLinkでは、開発者が定義したBeanメソッドによって、オブジェクトの状態の変化を検出する必要はありません。
isolation-level: キャッシュまたはデータベース・トランザクションの分離レベル設定はTopLinkプロジェクトで指定するため、このタグは無視されます。
cache: TopLinkのキャッシュ・プロパティはTopLink Workbenchで定義するため、このタグは不要です。