ヘッダーをスキップ

Oracle Containers for J2EE Enterprise JavaBeans開発者ガイド
10g(10.1.3.1.0)

B31852-03
目次
目次
索引
索引

戻る 次へ

20 データソースの構成

この章の内容は次のとおりです。

詳細は、次を参照してください。

Oracleデータベースのデータソースの構成

Oracleデータベースのデータソースを作成するには、マネージド・データソースを作成します。マネージド・データソースは、Application Server Controlコンソール(「Application Server Controlコンソールの使用方法」を参照)またはデプロイXML(「デプロイXMLの使用方法」を参照)を使用して作成できます。

詳細は、次を参照してください。

Application Server Controlコンソールの使用方法

Application Server Controlコンソールを使用して、OC4Jを再起動せずにマネージド・データソースを動的に作成できます。

詳細はhttp://www.oracle.com/technology/tech/java/oc4j/1013/
how_to/index.htmlを参照してください。

デプロイXMLの使用方法

例20-1に示すように、Oracleデータベースのマネージド・データソースは、data-sources.xmlファイルでconnection-pool要素およびmanaged-data-source要素を構成することにより構成できます。

例20-1    Oracle JDBCデータソースのdata-sources.xml

<connection-pool name="ScottConnectionPool">
    <connection-factory
        factory-class="oracle.jdbc.pool.OracleDataSource"
        user="scott"
        password="tiger"
        url="jdbc:oracle:thin:@//localhost:1521/ORCL" >
    </connection-factory>
</connection-pool>

<managed-data-source
    name="OracleManagedDS"
    jndi-name="jdbc/OracleDS"
    connection-pool-name="ScottConnectionPool"
    tx-level="global"
/>

connection-factory要素には、サービスベースの接続URLを必ず指定してください
「OC4Jでの接続URLの定義方法」を参照)。

マネージド・データソースでは、デフォルトでグローバル(2フェーズ・コミット)トランザクションがサポートされます。ローカル・トランザクションのみをサポートするようにマネージド・データソースを構成するには、managed-data-sourceの属性tx-levellocalに設定します。詳細は、「データソースでサポートされるトランザクションのタイプ」を参照してください。

詳細は、次を参照してください。

この方法を使用してマネージド・データソースを構成する場合は、OC4Jを再起動して変更を適用する必要があります。または、Application Server Controlコンソールを使用して、OC4Jを再起動せずにデータソースを動的に作成できます(「Application Server Controlコンソールの使用方法」を参照)。

サード・パーティ・データベースのデータソースの構成

サード・パーティ(Oracle以外)のデータベースのデータソースを作成するには、ネイティブ・データソースを作成します。ネイティブ・データソースは、Application Server Controlコンソール(「Application Server Controlコンソールの使用方法」を参照)またはデプロイXML(「デプロイXMLの使用方法」を参照)を使用して作成できます。

詳細は、次を参照してください。

Application Server Controlコンソールの使用方法

Application Server Controlコンソールを使用して、OC4Jを再起動せずにネイティブ・データソースを動的に作成できます。

詳細はhttp://www.oracle.com/technology/tech/java/oc4j/1013/how_to/
index.htmlを参照してください。

デプロイXMLの使用方法

例20-2に、サード・パーティ・データベース(この例ではSQLServer)のネイティブ・データソース要素を定義する方法を示します。

例20-2    サード・パーティ・データベースのdata-sources.xml

<native-data-source
  name="nativeDataSource"
  jndi-name="jdbc/nativeDS"
  description="Native DataSource"
  data-source-class="com.ddtek.jdbcx.sqlserver.SQLServerDataSource"
  user="frank"
  password="frankpw"
  url="jdbc:datadirect:sqlserver://server_name:1433;User=usr;Password=pwd">
</native-data-source>

 

ネイティブ・データソースでは、デフォルトでローカル・トランザクションのみがサポートされます。グローバル(2フェーズ・コミット)トランザクションの場合は、マネージド・データソースを構成します。詳細は、「データソースでサポートされるトランザクションのタイプ」を参照してください。

詳細は、次を参照してください。

この方法を使用してネイティブ・データソースを構成する場合は、OC4Jを再起動して変更を適用する必要があります。または、Application Server Controlコンソールを使用して、OC4Jを再起動せずにネイティブ・データソースを動的に作成できます(「Application Server Controlコンソールの使用方法」を参照)。

EJB 3.0アプリケーションのデフォルトのデータソースの構成

デプロイXMLを使用してEJB 3.0アプリケーションのデフォルトのデータソースを構成できます(「デプロイXMLの使用方法」を参照)。

詳細は、次を参照してください。

デプロイXMLの使用方法

EJB 3.0アプリケーションのデフォルトのデータソースを構成するには、次のようにします。

  1. orion-application.xmlファイルのdefault-data-source属性で、デフォルトのデータソースの名前を設定します。

  2. EJB 3.0アプリケーションをカスタマイズして、ejb3-toplink-session.xmlファイルにこの名前のデータソースを定義します。

    詳細は、次を参照してください。

EJB 2.1アプリケーションのデフォルトのデータソースの構成

デプロイXMLを使用してEJB 2.1アプリケーションのデフォルトのデータソースを構成できます(「デプロイXMLの使用方法」を参照)。

詳細は、次を参照してください。

デプロイXMLの使用方法

EJB 2.1アプリケーションのデフォルトのデータソースを構成するには、次のようにします。

  1. orion-application.xmlファイルのorion-application要素のdefault-data-source属性で、デフォルトのデータソースの名前を設定します。

  2. orion-ejb-jar.xmlファイルのentity-deployment要素のdata-source属性で、デフォルトのデータソースの名前を設定します。

  3. <OC4J_HOME>/j2ee/home/config/data-sources.xmlファイルで、デフォルトのデータソースを定義します。

TopLinkとOracle JDBCドライバとの関連付け

このリリースでは、デフォルトでTopLinkがOracle JDBCドライバのバージョン10.2(ojdbc14_102.jar)と関連付けられます。

このバージョンのOracle JDBCドライバが、使用するOracleデータベースのリリースに適切ではない場合、TopLinkを別のバージョンのOracle JDBCドライバに関連付けることができます。

TopLinkを別のバージョンのOracle JDBCドライバに関連付ける方法は、次のように作成するアプリケーションのタイプに応じて異なります。

詳細は、『Oracle Containers for J2EE開発者ガイド』のOC4Jクラス・ロード・フレームワークの仕様に関する項を参照してください。

EJB 3.0アプリケーションおよびEJB 2.1 CMP以外のアプリケーション

EJB 3.0アプリケーションおよびEJB 2.1 CMP以外のアプリケーションの場合、次の制限に注意してください。

EJB 3.0またはEJB 2.1のCMP以外のアプリケーションをデフォルトとは異なる特定のバージョンのOracle JDBCドライバに関連付ける場合、次のようにします。

  1. 新規Oracle JDBCドライバの共有ライブラリ用として<ORACLE_HOME>/j2ee/home/
    shared-lib/oracle.jdbc
    にフォルダを作成します。

    この例では、<ORACLE_HOME>/j2ee/home/shared-lib/oracle.jdbc/10.3というフォルダを作成します。

    実際のOracle JDBCドライバのJARファイルを参照する場合は、このディレクトリを基準にします。Oracle JDBCドライバのJARファイルは、このディレクトリに配置して単純に名前で参照するか、他のディレクトリに配置してこのディレクトリに対する相対的な部分パスを使用して参照します。

  2. 例20-3に示すように、新規Oracle JDBCドライバの共有ライブラリをserver.xmlに定義します。

    例20-3    server.xmlでのOracle JDBCドライバ・バージョン10.3の共有ライブラリの定義

    ...
    <shared-library name="oracle.jdbc" version="10.3">
        <code-source path="ojdbc14_103.jar"/>
    </shared-library>
    ...

    oracle.jdbc共有ライブラリの名前を、
    使用するOracle JDBCドライバのバージョンに対応する様々なバージョン番号(この例では10.3)と組み合せて使用します。

    この例では、code-sourceの属性pathは、ojdbc14_103.jarという単純な名前です
    (この場合、<ORACLE_HOME>/j2ee/home/shared-lib/oracle.jdbc/10.3にJARファイルが配置されていると仮定します)。
    または、<ORACLE_HOME>/j2ee/home/
    shared-lib/oracle.jdbc/10.3
    ディレクトリに対する相対的な部分パスとしてpathを設定することも可能です。

  3. 例20-4に示すように、対応するTopLink共有ライブラリをserver.xmlに定義します。

    例20-4    server.xmlでのOracle JDBCドライバ・バージョン10.3に対応するoracle.toplink共有ライブラリの定義

    ...
    <shared-library name="oracle.jdbc" version="10.3">
        <code-source path="ojdbc14_103.jar"/>
    </shared-library>
    <shared-library name="oracle.toplink" version="10.3" library-compatible="true">
        <code-source path="../../../../../toplink/jlib/toplink.jar"/>
        <code-source path="../../../../../toplink/jlib/antlr.jar"/>
        <code-source path="../../../../../toplink/jlib/cciblackbox-tx.jar"/>
        <import-shared-library name="oc4j.internal"/>
        <import-shared-library name="oracle.xml"/>
        <import-shared-library name="oracle.jdbc" max-version="10.3"/>
        <import-shared-library name="oracle.dms"/>
    </shared-library>
    ...

     

    oracle.toplink共有ライブラリの名前を、使用するOracle JDBCドライバのバージョンに対応する様々なバージョン番号(この例では10.3)と組み合せて使用します。このoracle.toplink共有ライブラリでは、必ずoracle.jdbc共有ライブラリの適切なバージョン(この例ではmax-version="10.3")をインポートしてください。


    注意

    新規oracle.toplinkライブラリで元のJARファイルと同じJARファイルを使用し、単に同じものを作成してoracle.jdbcの別のバージョンを指定する場合、このライブラリに対応するフォルダを<ORACLE_HOME>/
    j2ee/home/shared-lib
    に作成することを避けるには、例20-4に示すようにshared-libraryの属性library-compatibletrueに設定します。 


  4. 次のように、アプリケーションの新規共有ライブラリをインポートします。

    1. 新規oracle.jdbcおよびoracle.toplink共有ライブラリをOC4Jインスタンスのすべてのアプリケーションのデフォルトに設定するには、例20-5に示すようにsystem-applications.xmlを更新します。

      例20-5    system-applications.xmlにおけるすべてのアプリケーション用の共有ライブラリのインポート

      ...
          <imported-shared-libraries>
      ...
              <import-shared-library name="oracle.jdbc" min-version="10.3" max-version="10.3"/>
              <import-shared-library name="oracle.toplink" min-version="10.3" max-version="10.3"/>
      ...
          </imported-shared-libraries>
      ...

       

    2. 新規oracle.jdbcおよびoracle.toplink共有ライブラリを特定のアプリケーションにのみ適用するには、例20-6に示すようにそのアプリケーションのorion-applications.xmlを更新します。

      この場合、例20-6に示すように、orion-applications.xmlファイルと同じフォルダに存在し、orion-applications.xmlファイルで参照されるdata-sources.xmlファイルにデータソースを定義する必要があります。

      例20-6    orion-applications.xmlにおける特定のアプリケーション用の共有ライブラリのインポート

      ...
      <orion-application>
          <ejb-module remote="true" path="simpleobject_ejb.jar" />
          <client-module path="simpleobject_ejb.jar" auto-start="false" />
          <persistence path="persistence" />
          <imported-shared-libraries>
              <import-shared-library name="oracle.jdbc" max-version="10.3"/>
              <import-shared-library name="oracle.toplink" max-version="10.3"/>
          </imported-shared-libraries>
          <log>
              <file path="application.log" />
          </log>
          <data-sources path="data-sources.xml" />
          <namespace-access>
              ..........
          </namespace-access>
      </orion-application>
      
      

EJB 2.1 CMPアプリケーション

EJB 2.1 CMPアプリケーションの場合、次の制限に注意してください。

EIS AQコネクタ・アプリケーション

EIS AQコネクタを使用するアプリケーションをデフォルトとは異なる特定のバージョンのOracle JDBCドライバに関連付ける場合、「EJB 3.0アプリケーションおよびEJB 2.1 CMP以外のアプリケーション」の手順に従います。

この場合、例20-7に示すように、新規oracle.jdbc共有ライブラリでaqapi.jarファイルをリロードする必要もあります。

例20-7    server.xmlでのOracle JDBCドライバ・バージョン10.3の共有ライブラリの定義


...
<shared-library name="oracle.jdbc" version="10.3">
    <code-source path="ojdbc14_103.jar"/>
    <code-source path="../../../../../rdbms/jlib/aqapi.jar"/>
</shared-library>
...


戻る 次へ
Oracle
Copyright © 2002, 2008 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引