6.6. データソース設定
6.6.1. データソースのパラメーター
表6.3 非 XA および XA データソースに共通のデータソースパラメーター
パラメーター | 説明 |
---|---|
jndi-name | データソースに対する一意の JNDI 名 |
pool-name | データソースの管理プール名 |
enabled | データソースが有効かどうか |
use-java-context |
データソースをグローバルの JNDI にバインドするかどうか
|
spy |
JDBC 層で
spy 機能を有効にします。これで全 JDBC トラフィックをデータソースにロギングします。logging-category パラメーターは org.jboss.jdbc に設定する必要があります。
|
use-ccm | キャッシュ接続マネージャーを有効化 |
new-connection-sql | 接続プールに接続が追加された場合に実行する SQL ステートメント |
transaction-isolation |
以下のいずれかになります。
|
url-delimiter | 高可用性 (HA) のクラスターデータベース に関する connection-url にある URL の区切り文字 |
url-selector-strategy-class-name | org.jboss.jca.adapters.jdbc.URLSelectorStrategy インターフェースを実装するクラス |
security |
セキュリティー設定である子要素が含まれます。表6.8「セキュリティパラメーター」 を参照してください。
|
validation |
検証設定である子要素が含まれます。表6.9「検証パラメーター」 を参照してください。
|
timeout |
タイムアウト設定である子要素が含まれます。表6.10「タイムアウトパラメーター」 を参照してください。
|
statement |
ステートメント設定である子要素が含まれます。表6.11「ステートメントのパラメーター」 を参照してください。
|
表6.4 非 XA データソースのパラメーター
パラメーター | 説明 |
---|---|
jta | 非 XA データソースの JTA 統合を有効にします。XA データソースには適用されません。 |
connection-url | JDBC ドライバーの接続 URL |
driver-class | JDBC ドライバークラスの完全修飾名 |
connection-property | Driver.connect(url,props) メソッドに渡される任意の接続プロパティー。各 connection-property は、文字列名と値のペアを指定します。プロパティー名は名前、値は要素の内容に基づいています。
|
pool |
プーリング設定である子要素が含まれます。表6.6「非 XA および XA データソースに共通のプールパラメーター」 を参照してください。
|
表6.5 XA データソースのパラメーター
パラメーター | 説明 |
---|---|
xa-datasource-property |
実装クラス
XADataSource に割り当てるプロパティー。name=value で指定。 setName という形式で setter メソッドが存在する場合、プロパティーは setName(value) という形式の setter メソッドを呼び出すことで設定されます。
|
xa-datasource-class |
実装クラス
javax.sql.XADataSource の完全修飾名
|
driver |
JDBC ドライバーを含むクラスローダーモジュールへの一意参照。driverName#majorVersion.minorVersion. の形式にのみ対応しています。
|
xa-pool |
プーリング設定である子要素が含まれます。表6.6「非 XA および XA データソースに共通のプールパラメーター」 および 表6.7「XA プールパラメーター」 を参照してください。
|
recovery |
リカバリー設定である子要素が含まれます。表6.12「リカバリーパラメーター」 を参照してください。
|
表6.6 非 XA および XA データソースに共通のプールパラメーター
パラメーター | 説明 |
---|---|
min-pool-size | プールが保持する最小接続数 |
max-pool-size | プールが保持可能な最大接続数 |
prefill | 接続プールのプレフィルを試行するかどうか。要素が空の場合は true を示します。デフォルトは、false です。 |
use-strict-min | pool-size が厳密かどうか。デフォルトは false に設定されています。 |
flush-strategy |
エラーがある場合にプールをフラッシュするかどうか。有効値は次の通りです。
デフォルトは
FailingConnectionOnly です。
|
allow-multiple-users | 複数のユーザーが getConnection (user, password) メソッドを使いデータソースへアクセスするか、また内部プールタイプがこの動作に対応するかを指定します。 |
表6.7 XA プールパラメーター
パラメーター | 説明 |
---|---|
is-same-rm-override | javax.transaction.xa.XAResource.isSameRM(XAResource) クラスが true あるいは false のどちらを返すか |
interleaving | XA 接続ファクトリのインターリービングを有効にするかどうか |
no-tx-separate-pools | コンテキスト毎に sub-pool を作成するかどうか。これには Oracle のデータソースが必要ですが、このデータソースは JTA トランザクションの内部、外部に関わらず、XA 接続の利用ができなくなります。 |
pad-xid | Xid のパディングを行うかどうか |
wrap-xa-resource | org.jboss.tm.XAResourceWrapper インスタンスの XAResource をラップするかどうか
|
表6.8 セキュリティパラメーター
パラメーター | 説明 |
---|---|
user-name | 新規接続の作成に使うユーザー名 |
password | 新規接続の作成に使うパスワード |
security-domain | 認証処理を行う JAAS security-manager 名が入ります。この名前は、JAAS ログイン設定のapplication-policy/name 属性を相関します。 |
reauth-plugin | 物理接続の再認証に使う再認証プラグインを定義します。 |
表6.9 検証パラメーター
パラメーター | 説明 |
---|---|
valid-connection-checker | SQLException.isValidConnection(Connection e) 設定を渡し接続の検証を行う org.jboss.jca.adaptors.jdbc.ValidConnectionChecker インターフェースの実装。接続が破棄されると例外となります。このパラメーターがある場合、check-valid-connection-sql よりもこのパラメーターが優先されます。
|
check-valid-connection-sql | プール接続の妥当性を確認する SQL ステートメント。これは、管理接続をプールから取得し利用する場合に呼び出される場合があります。 |
validate-on-match |
接続ファクトリが、指定セットと管理接続がマッチするか確認しようとした場合に、接続レベルの検証を実行するかを指定します。
background validation とは相互排他的です。
|
background-validation |
接続が利用前の認証ではなく、バッググラウンドのスレッドで認証済みであることを指定します。
validate-on-match とは相互排他的です。
|
background-validation-minutes | バックグラウンド認証を実行する時間数 (分)。 |
use-fast-fail |
true の場合、接続が無効であれば1回目の試行で接続割り当てを失敗させます。デフォルトは
false です。
|
stale-connection-checker | org.jboss.jca.adapters.jdbc.StaleConnectionChecker のインスタンスで、Boolean isStaleConnection(SQLException e) メソッドを渡します。このメソッドが true を返す場合、例外は、SQLException のサブクラスである、org.jboss.jca.adapters.jdbc.StaleConnectionException でラップされます。
|
exception-sorter | org.jboss.jca.adapters.jdbc.ExceptionSorter のインスタンスで、ブール変数 isExceptionFatal(SQLException e) メソッドを渡します。このメソッドは、例外が connectionErrorOccurred メッセージとして、javax.resource.spi.ConnectionEventListener のインスタンスすべてにブロードキャストされるべきかを検証します。
|
表6.10 タイムアウトパラメーター
パラメーター | 説明 |
---|---|
blocking-timeout-millis | 接続待機中にブロックする最大時間数 (ミリ秒)。この時間を超過すると、例外が送出されます。これは、接続許可の待機中にブロックするだけで、新規接続の作成に長時間要している場合は例外を送出しません。デフォルトは 30000 (3分) です。 |
idle-timeout-minutes |
アイドル接続が切断されるまでの最大時間 (分)。実際の最大時間は、idleRemover のスキャン時間 (プールの最小
idle-timeout-minutes の半分) に左右されます。
|
set-tx-query-timeout |
トランザクションがタイムアウトされるまでの残存時間数をもとにクエリのタイムアウトを設定するかどうか。トランザクションが存在しない場合は設定済みのクエリタイムアウトのいずれかを利用します。デフォルトは
false です。
|
query-timeout | クエリのタイムアウト (秒)。デフォルトはタイムアウトなしです。 |
allocation-retry | 例外を送出する前に接続割り当ての再試行をする回数。デフォルトは 0 で、初回の失敗後に例外が送出されます。 |
allocation-retry-wait-millis |
接続割り当てまで待機する時間数 (ミリ秒)。デフォルトは 5000 で、5秒です。
|
xa-resource-timeout |
ゼロ以外の場合、この値は
XAResource.setTransactionTimeout メソッドに渡されます。
|
表6.11 ステートメントのパラメーター
パラメーター | 説明 |
---|---|
track-statements |
接続がプールに返され、ステートメントが準備済みステートメントのキャッシュに返された時点で、ステートメントが閉じられていることを確認するかどうか。false の場合、ステートメントはトラッキングされません。
有効な値
|
prepared-statement-cache-size | Least Recently User (LRU) キャッシュ内の接続毎の準備済みステートメント数。 |
share-prepared-statements |
ステートメントを閉じずに同じステートメントを2回リクエストする場合に、基盤となる準備済みステートメントは同じものを使うのかどうか。デフォルトは
false です。
|
表6.12 リカバリーパラメーター
パラメーター | 説明 |
---|---|
recover-credential | リカバリーに利用するユーザー名とパスワードのペアあるいは、セキュリティドメイン。 |
recover-plugin |
リカバリーに利用する
org.jboss.jca.core.spi.recoveryRecoveryPlugin の実装クラス。
|