Oracle® Fusion Middleware Oracle WebLogic Server JTAのプログラミング 11gリリース1 (10.3.6) B61631-08 |
|
![]() 前 |
![]() 次 |
この項では、分散トランザクションにおけるWebLogic ServerでのXA JDBCドライバの使い方について説明します。これらのドライバは、WebLogic Server接続プールとDBMSの間の接続を提供します。分散トランザクションで使用するドライバは、後に「/XA」が続くドライバ名(Oracle Thin/XA Driverなど)によって指定されます。
この章には次の項が含まれます:
WebLogic Serverに付属するOracle Thin Driverは事前に構成され、そのまま使用できる状態になっています。ドライバを更新するか、別のバージョンを使用する場合は、『Oracle WebLogic Server JDBCのプログラミング』の「JDBCドライバでのAPI拡張機能の使用」を参照してください。
以下の節では、Oracle Thin/XA Driverの環境を設定する方法について説明します。
Oracle Thin/XA Driverで使用するためのWebLogic Serverの構成方法については、『Oracle WebLogic Server JDBCのプログラミング』の「JDBCドライバでのAPI拡張機能の使用」を参照してください。
XA用のデータベースを準備するには、以下の操作を実行します。
システム・ユーザーとしてsqlplusにログオンします(sqlplus sys/CHANGE_ON_INSTALL@<DATABASE ALIAS NAME>
など)。
次のコマンドを実行します。@xaview.sql
スクリプトxaview.sql
は、$ORACLE_HOME/rdbms/admin
ディレクトリにあります。
XAデータ・ソースが定義されているすべてのデータベース・ユーザーに、次の権限を個別に付与するか、1つ以上のロールを介して付与してください。
grant select on v$xatrans$ to <user/role>;
grant select on pending_trans$ to <user/role>;
grant select on dba_2pc_pending to <user/role>;
grant select on dba_pending_transactions to <user/role>;
grant execute on dbms_xa to <user/role>;
<user/role>
は、データベース・ユーザーであるかロールです。
上の手順をデータベース・サーバー上で実行しない場合、通常のXAデータベース問合せと更新は正常に動作できます。ただし、クラッシュ後の再起動時にWebLogic Serverトランザクション・マネージャによってリカバリが実行されると、XAER_RMERR
でOracleリソースのリカバリに失敗します。クラッシュのリカバリは、XAリソースに対する標準的な処理です。
データ・ソース・プロパティの構成方法については、『Oracle WebLogic Server JDBCデータ・ソースの構成と管理』のJDBCデータ・ソースの構成に関する項を参照してください。