30.4. JCA アダプターの設定

Java Connector Architecture (JCA) アダプターを使用すると、HornetQ を MDB や EJB などの Java EE コンポーネントと統合できます。これは、MDB などのコンポーネントが HornetQ サーバーからメッセージをどのように消費するかや、EJB またはサーブレットなどのコンポーネントがメッセージをどのように送信できるかを設定します。
HornetQ JCA アダプターは、JBOSS_DIST/jboss-as/server/PROFILE/deploy/jms-ra.rar アーカイブでデプロイされます。アダプターの設定は、META-INF/ra.xml 下のこのアーカイブにあります。
これを参照する必要がある場合は、このファイルのサイズのため、これは、付録B ra.xml HornetQ リソースアダプターファイル に含まれます。また、指定されたディレクトリからこのファイルを開き、以下の情報とともに確認することもできます。
この設定には 3 つの主要な部分があります。これらについては、次の項で説明されています。

30.4.1. JCA グローバルプロパティー

表示された最初の要素は resourceadapter-class であり、変更しないでください。これは、HornetQ リソースアダプタークラスです。
この後に、設定プロパティーのリストがあります。ここでは、ほとんどの設定が行われます。最初の 2 つのプロパティーはアダプターにより使用されるトランスポートを設定し、残りは接続ファクトリー自体を設定します。

注記

すべての接続ファクトリープロパティーは、デフォルト値が -1 である reconnectAttempts を除いて、デフォルト値を使用します。これは、接続が接続障害時に再接続を無限に行うことを意味します。これは、InVM コネクターが失敗できない場合に、アダプターがリモートサーバーに接続するよう設定された場合のみ使用されます。
以下の表は、各プロパティの使用目的について説明しています。

表30.1 グローバル設定プロパティー

プロパティー名 プロパティータイプ プロパティーの説明
ConnectorClassName 文字列 Connector クラス名 (詳細については、14章トランスポートの設定 を参照)
ConnectionParameters 文字列 トランスポート設定。これらのパラメーターは、key1=val1;key2=val2; という形式である必要があり、使用されるコネクターに固有です。
useLocalTx ブール値 True の場合は、ローカルトランザクションの最適化が有効になります。
UserName 文字列 接続を確立するときに使用するユーザー名
Password 文字列 接続を確立するときに使用するパスワード
BackupConnectorClassName 文字列 ライブノードで障害が発生したときに使用するバックアップトランスポート
BackupConnectionParameters 文字列 バックアップトランスポート設定パラメーター
DiscoveryAddress 文字列 サーバーを自動検出するために使用する検出グループアドレス
DiscoveryPort 整数 検出に使用するポート
DiscoveryRefreshTimeout Long 更新するタイムアウト (ミリ秒単位)
DiscoveryInitialWaitTimeout Long 検出を待機する初期時間
ConnectionLoadBalancingPolicyClassName 文字列 使用するロードバランシングポリシークラス
ConnectionTTL Long 接続のために存続する時間 (ミリ秒単位)
CallTimeout Long 送信された各パケットに対するコールタイムアウト (ミリ秒単位)。
DupsOKBatchSize 整数 DUPS_OK_ACKNOWLEDGE モードを使用する場合の、承認間のバッチサイズ (バイト単位)。
TransactionBatchSize 整数 トランザクションセッションの使用時の、承認間のバッチサイズ (バイト単位)。
ConsumerWindowSize 整数 コンシューマーフロー制御のウィンドウサイズ (バイト単位)
ConsumerMaxRate 整数 コンシューマーが 1 秒ごとにメッセージを消費できる最速レート
ConfirmationWindowSize 整数 再添付の確認のためのウィンドウサイズ (バイト単位)
ProducerMaxRate 整数 1 秒ごとに送信できるメッセージの最大レート
MinLargeMessageSize 整数 バイト単位のサイズ。これよりも大きいと、メッセージが大きいと見なされます。
BlockOnAcknowledge ブール値 メッセージが同期的に承認されるかどうか。
BlockOnNonDurableSend ブール値 非耐性メッセージが同期的に送信されるかどうか。
BlockOnDurableSend ブール値 耐性メッセージが同期的に送信されるかどうか。
AutoGroup ブール値 メッセージグルーピングが自動的に使用されるか、されないか。
PreAcknowledge ブール値 送信前にメッセージをサーバーが事前に承認するかどうか。
ReconnectAttempts 整数 再試行の最大回数。リソースアダプターのデフォルト値は -1 (無限の試行回数) です。
RetryInterval Long 失敗後に接続を再試行する時間 (ミリ秒単位)。
RetryIntervalMultiplier Double 連続する再試行間隔に適用する乗数。
FailoverOnServerShutdown ブール値 true の場合は、クライアントが別のサーバー (利用可能な場合) に最接続します。
ClientID 文字列 接続ファクトリーに対して事前に設定されたクライアント ID。
ClientFailureCheckPeriod Long ミリ秒単位の時間。この時間の経過後、クライアントはサーバーからパケットを受け取らない場合に接続が失敗したと見なします。
UseGlobalPools ブール値 スレッドにグローバルスレッドプールを使用するかどうか。
ScheduledThreadPoolMaxSize 整数 スケジュールされたスレッドプールのサイズ。
ThreadPoolMaxSize 整数 スレッドプールのサイズ。
SetupAttempts 整数 JMS 接続をを設定する試行回数 (デフォルト値は 10 であり、-1 は無限に再試行することを意味します)。MDB は、JMS リソースが利用可能になる前にデプロイされることがあります。この場合、リソースアダプターは、リソースが利用可能になるまで複数回設定の試行を行います。これは、インバウンド接続にのみ適用されます。
SetupInterval Long JMS 接続を設定するための、連続する試行間のミリ秒単位の時間(デフォルト値は 2000m)。これは、インバウンド接続に対してのみ適用されます。