7. JMS

JMSに関する設定について説明します。

7.1. JMS設定項目・設定方法

JMSサーバや、JMSリソース、および、送信先の基本的な管理は、運用管理コマンド (otxadmin)、あるいは、統合運用管理ツールで行います。さらに詳細な管理を行うためには、JMSサーバが提供している専用の運用管理ツールを利用します。

運用管理コマンド、あるいは、統合運用管理ツールからの各項目の設定方法については、「 各サービスの属性」を参照してください。また、JMSサーバが提供している専用の各運用管理ツールについては、「 コマンド > JMS」を参照してください。

7.1.1. JMSサーバに対する設定

JMSサーバの運用に関するプロパティは、JMSサービス (jms-service) と、JMSホスト (jms-host) のMOから設定できます。

運用管理コマンドや、統合運用管理ツールでは、それぞれ以下のように指定します。

運用管理コマンド:
server.jms-service
server.jms-service.jms-host.default_JMS_host

統合運用管理ツール:
管理ドメイン [ <ホスト名> ] .<ドメイン名>.アプリケーションサーバ.JMSサービス
管理ドメイン [ <ホスト名> ] .<ドメイン名>.アプリケーションサーバ.JMSサービス.JMSホスト.default_JMS_host

JMSサーバは、1〜4のプロパティを取り込みます。優先順位は、後ろのものほど高くなっています。

7.1.1.1. default.propertiesファイル

プロパティのデフォルト値が定義されたファイルで、次の位置にあります。

${AS_INSTALL}/jmq/lib/props/broker/default.properties

Caution
利用者は直接編集を行わないで下さい。

7.1.1.2. install.propertiesファイル

インストール時に指定されたプロパティが格納されるファイルで、次の位置にあります。

${AS_INSTALL}/jmq/lib/props/broker/install.properties

Caution
利用者は直接編集を行わないで下さい。

7.1.1.3. config.propertiesファイル

ドメイン固有のJMSサーバに対するプロパティ設定を記述するファイルで、次の位置にあります。ファイルはドメイン生成時に作成されます。

${INSTANCE_ROOT}/jmq/instances/<JMSサーバインスタンス識別子>/props/config.properties

Memo
<JMSサーバインスタンス識別子>の既定値は「jmqbroker」です。

7.1.1.4. JMSサーバの起動引数 (server.jms-service.start-args)

起動引数で指定したプロパティは、すべてのプロパティ設定ファイルに対して優先されます。

7.1.2. コネクションファクトリに対する設定

7.1.2.1. コネクションファクトリリソース

コネクションファクトリリソースは、Java EEアプリケーションからJNDIを通して利用します。項目の設定や、参照を行う場合、運用管理コマンドや、統合運用管理ツールでは、それぞれ以下のように指定します。
connection-factory-name」は、コネクションファクトリリソースの定義名で、JNDIの登録名になります。

運用管理コマンド:
server.resources.jms-resource.jms-connection-factory. connection-factory-name

統合運用管理ツール:
管理ドメイン [ <ホスト名> ] .<ドメイン名>.リソース.JMSリソース.コネクションファクトリリソース. connection-factory-name

7.1.3. 送信先に対する設定

7.1.3.1. 送信先

物理的な送信先の設定や、項目の参照を行う場合、運用管理コマンドや、統合運用管理ツールでは、それぞれ以下のように指定します。「 physical-destination-name」は、送信先の定義名です。

運用管理コマンド:
server.jms-service.jms-physical-destination. physical-destination-name

統合運用管理ツール:
管理ドメイン [ <ホスト名> ] .<ドメイン名>.アプリケーションサーバ.JMSサービス.送信先名. physical-destination-name
7.1.3.2. 送信先リソース

送信先リソースは、Java EEアプリケーションからJNDIを通して利用します。項目の設定や、参照を行う場合、運用管理コマンドや、統合運用管理ツールでは、それぞれ以下のように指定します。
logical-destination-name」は、送信先リソースの定義名で、JNDIの登録名になります。

運用管理コマンド:
server.resources.jms-resource.jms-logical-destination. logical-destination-name

統合運用管理ツール:
管理ドメイン [ <ホスト名> ] .<ドメイン名>.リソース.JMSリソース.送信先リソース. logical-destination-name

7.2. JMS設定項目一覧

運用管理コマンド、統合運用管理ツールで制御できるMOの属性と、そのベースとなるJMSのプロパティ/属性一覧を示します。

7.2.1. MOの属性一覧

JMSに関連するMOのうち、属性を設定できるものは、以下の5種類です。以降、各MOについて設定できる属性を説明します。

7.2.2. JMSサービス

連携するJMSサーバに関する情報を定義します。
この定義は、運用管理コマンドのcreate-domainによるドメイン生成時に自動的に設定されます。
MOのdottednameは「server.jms-service」です。設定可能な属性や、操作については、「 MBean定義 > jms-service」を参照してください。
なお、jms-serviceの「プロパティ」として設定できるのは、以下の項目です。

プロパティ名
説 明 既定値
instance-name JMSサーバインスタンス識別子を指定します。
※ 同一ホストでJMSサーバクラスタを構成する場合は、この値をホスト内で一意にしておく必要があります。
jmqbroker

7.2.3. JMSホスト

JMSサーバの起動、JMSサーバへの接続に必要な情報を定義します。
この定義は、create-domainコマンドによるドメイン生成時に自動的に設定されます。ポート番号については、create-domainコマンドの--fileオプションで指定するプロパティファイル (ドメイン設定ファイル) に、domain.jms.portとして指定することができます。
MOのdottednameは「server.jms-service.jms-host.default_JMS_host」です。設定可能な属性や、操作については、「 MBean定義 > jms-host」を参照してください。

7.2.4. コネクションファクトリリソース

JNDIを通してアクセスするコネクションファクトリリソースを定義します。
この定義は、運用管理コマンドのcreate-jms-resource、統合運用管理ツールでは、「管理ドメイン [ <ホスト名> ] .<ドメイン名>.リソース.JMSリソース」の「コネクションファクトリリソースの作成」操作で作成されます。コネクションファクトリリソースの作成方法については、「 構築・運用 > JMS > JMSリソース」を参照してください。
コネクションファクトリリソース (jms-connection-factory) 作成時には、コネクタリソース (connector-resource)、コネクタコネクションプール (connector-connection-pool)、および、リソース参照 (resource-ref) を自動的に作成し、属性値を設定します。 属性値を変更する場合は、コネクションファクトリリソースのMOを介して行います。 各MOのdottednameは以下のとおりです。

コネクションファクトリリソース
server.resources.jms-resource.jms-connection-factory. connection-factory-name

コネクタリソース
server.resources.connector-resource. connection-factory-name

コネクタコネクションプール
server.resources.connector-connection-pool. connection-factory-name

リソース参照
server.resource-ref. connection-factory-name

設定可能な属性や、操作については、「 MBean定義」を参照してください。

Caution
コネクションファクトリリソース作成時、「プロパティ」に属性と同じ名前の項目を指定した場合は、「プロパティ」に指定されたものが優先されます。

7.2.5. 送信先

物理的な送信先を定義します。
この定義は、運用管理コマンドのcreate-jmsdest、統合運用管理ツールでは、「管理ドメイン [ <ホスト名> ] .<ドメイン名>.アプリケーションサーバ.JMSサービス」の「送信先作成」操作で作成されます。送信先の作成方法については、「 構築・運用 > JMS > 送信先の操作」を参照してください。
MOのdottednameは「server.jms-service.jms-physical-destination.destination-name」です。設定可能な属性や、操作については、「 MBean定義 > jms-physical-destination」を参照してください。

Caution
送信先作成時、「プロパティ」に属性と同じ名前の項目を指定した場合は、「プロパティ」に指定されたものが優先されます。

7.2.6. 送信先リソース

JNDIを通してアクセスする送信先リソースを定義します。
この定義は、運用管理コマンドのcreate-jmsresource、統合運用管理ツールでは、「管理ドメイン [ <ホスト名> ] .<ドメイン名>.リソース.JMSリソース」の操作である「送信先リソースの作成」で作成されます。送信先リソースの作成方法については、「 構築・運用 > JMS > 送信先の操作」を参照してください。
送信先リソース (jms-logical-destination) 作成時には、管理オブジェクトリソース (admin-object-resource) と、リソース参照 (resource-ref) を自動的に作成し、属性値を設定します。
属性値を変更する場合は、送信先リソースのMOを介して行います。
各MOのdottednameは以下のとおりです。

送信先リソース
server.resources.jms-resource.jms-logical-destination. logical-destination-name

管理オブジェクトリソース
server.resources.admin-object-resource. logical-destination-name

リソース参照
server.resource-ref. logical-destination-name

設定可能な属性や、操作については、「 MBean定義」を参照してください。

Caution
送信先リソース作成時、「プロパティ」に属性と同じ名前の項目を指定した場合は、「プロパティ」に指定されたものが優先されます。

7.2.7. JMSのプロパティ/属性一覧

ここでは、以下のプロパティや属性について説明します。

JMSサーバのプロパティ
JMSサービス (jms-service) MOの「起動引数」属性や、「 JMS設定項目・設定方法 > JMSサーバに対する設定」で説明した、「 config.propertiesファイル」で設定するプロパティです。次のカテゴリに分けて説明しています。

JMSクライアントのプロパティ
非Java EE環境下で動作するJavaアプリケーションに有効であり、Javaシステムプロパティとして設定します。

7.2.8. JMSサーバのプロパティ

JMSサービスMOの「起動引数(start-args)」属性で指定する場合は、次の形式で指定します。

-D<プロパティ名>=<値> [-D<プロパティ名>=<値>] *

また、「config.properties」ファイルに定義する場合、設定ファイルの変更は、JMSサーバを停止した状態で行ってください。ファイルの格納場所、設定方法については、「 JMS設定項目・設定方法」を参照してください。

Memo
V11.1より、JMSサーバのプロパティ名は、"imq."で始まる名前になります。
(例) [V10まで]wojms.service.activelist → [V11.1以降]imq.service.activelist

7.2.8.1. JMSサーバ全体のプロパティ
プロパティ名
説 明 既定値
imq.portmapper.backlog 要求を拒否せずに、同時に処理可能な要求の最大数を指定します。 50
imq.producer.maxBatch プロデューサが一度に送信できるメッセージの最大数を指定します。 1000
imq.message.expiration.interval 有効期限が切れたメッセージを廃棄する間隔を秒単位で指定します。 60
imq.authentication.client.response.timeout JMSサーバからの認証要求に対するクライアントの応答を待機する時間を秒単位で指定します。 180
7.2.8.2. コネクションサービスに関するプロパティ
プロパティ名
説 明 既定値
imq.service.activelist JMS起動時に活性化するサービス群を指定します。
jms:JMSのコネクションサービス
ssljms:JMSのSSLコネクションサービス
admin:管理用のコネクションサービス
ssladmin:管理用のSSLコネクションサービス
jms,admin
imq.shared.connectionMonitor_limit threadpool_modelにsharedを選択した場合に、コネクションを監視するスレッドの対象コネクションの最大数を指定します。-1は無制限です。 Windows:64
Unix:512
imq.< svc>.min_threads svcで示したコネクションサービスが使用するスレッドプールの最小数を指定します。
既定値はコネクションサービスにより異なります。
jms:10
ssljms:10
admin:4
ssladmin:4
imq.< svc>.max_threads svcで示したコネクションサービスが使用するスレッドプールの最大数を指定します。
既定値はコネクションサービスにより異なります。
0より大きく、かつmin_threadsで指定した値より大きくする必要があります。
jms:1000
ssljms:500
admin:10
ssladmin:10
imq.< svc>.tcp.hostname svcで示したサービスで使用するホスト名、もしくはIPアドレスを指定します。複数のネットワークインタフェース (NIC) を持つような場合に固定することができます。指定がない場合は、任意を意味します。
7.2.8.3. 永続ストアに関するプロパティ
プロパティ名
説 明 既定値
imq.persist.file.message.max_record_size 組み込みのファイルストアで、メッセージストレージファイル (個別のファイルではない) に追加されるメッセージの最大サイズ (バイト、K バイト、または Mバイト単位) を指定します。
128,128bは128バイトを、128kは128Kバイト (128×1024=131072バイト)、128mは128Mバイト (128×1024×1024=134217728バイト) を表します。
1m
imq.persist.file.message.filepool.cleanratio 組み込みのファイルストアの場合に、クリーン状態 (サイズを 0 にする) で保持される送信先のファイルプールの空きファイルの割合 (%) を指定します。この値が大きいほど、作業中にファイルを削除するのに必要なオーバーヘッドが増えますが、ファイルプールに必要なディスク容量は小さくなります。 0
imq.persist.file.destination.message.filepool.limit 組み込みのファイルストアの場合に、送信先のファイルプールで再利用できる空きファイルの最大数を指定します。この値が大きいほど、JMSサーバが永続データを処理する速度が速くなります。この値を超える空きファイルは削除されます。 100
imq.persist.file.message.cleanup 組み込みのファイルストアで、JMSサーバのシャットダウン時に、送信先のファイルプール内の空きファイルを削除するかどうかを指定します。値をfalseに設定すると、JMSサーバのシャットダウンが速くなりますが、ファイルを格納するためのディスク容量がさらに必要になります。 false
imq.persist.file.sync.enabled 永続処理でメモリ内の状態を物理的なストレージと同期させるかどうかを指定します。true の場合、システムクラッシュによるデータ損失は回避されますが、永続処理のパフォーマンスに負荷がかかります。 false
imq.persist.jdbc.retrycount JDBCストア利用時のデータベースへの再接続試行回数を指定します。 10
imq.persist.jdbc.retryinterval JDBCストア利用時のデータベースへの再接続遅延時間を秒単位で指定します。 10
7.2.8.4. ログ出力に関するプロパティ
プロパティ名
説 明 既定値
imq.log.timezone ログのタイムスタンプのタイムゾーンを指定します。識別子は、 java.util.TimeZone.getTimeZone() が使用しているものと同じです。
imq.log.file.dirpath ログファイルが格納されているディレクトリへのパスを指定します。デフォルト値は、install.propertiesファイルに定義されています。 ${imq.instanceshome}/../../logs/jmq
imq.log.file.filenum ログファイルのバックアップ数を指定します。 9
imq.log.file.output ログファイルに書き込むロギング情報のカテゴリを指定します。指定できる値は、 縦線 (|) で区切ったロギングのカテゴリ (ERROR, WARNING, INFO, DEBUG, DEBUGMED, DEBUGHIGH) のセットか、ALL または NONEです。
ALL:すべてのカテゴリを出力
NONE:出力しない
ALL
imq.log.error.dirpath エラーログの出力ディレクトリへのパスを指定します。 ${imq.log.file.dirpath}
imq.log.error.filenum エラーログファイルのバックアップ数を指定します。 9
imq.metrics.enabled メトリックス情報を収集するかどうかを指定します。
true:収集する
false:収集しない
true
imq.metrics.interval メトリックス情報が報告される間隔を秒単位で指定します。-1は報告しません。 -1
imq.log.dateformat ログファイルのメッセージに付加する日付フォーマットを指定します。指定対象となるファイルは、jmqadmin.log、jmqerror.log、jmqmessage.log、jmqpacket.log、jmqserver.log です。 V9.3以前と同じ形式にする場合は、次の値を指定してください。
[yyyy-MM-dd HH:mm:ss,SSS]
yyyy-MM-dd HH:mm:ss,SSS

Memo
V11.1より、カテゴリ別のログ出力 (運用管理操作履歴、パケットログ、メッセージライフサイクルログ) を廃止しました。 ただし、パケットログについては、JMSサービスMOの「ログレベル」属性 (server.jms-service.loglevel) を DEBUGHIGH にすることで、JMSメッセージの送受信でやり取りされるパケット (V10までの、PACKET_MESSAGEに相当するもの) をJMSサーバのログ (jmqserver.log) に出力することが可能です。出力内容は、[ パケットログの出力形式 ] を参照してください。

パケットログの出力形式

パケットログの出力形式は、次のようになっています。

<タイムスタンプ> ... <コネクション情報>
------------------------------
<送受信種別> Packet: <パケットダンプ>
------------------------------

出力項目の概要は、次の通りです。

出力項目 説明
タイムスタンプ ログ出力時の時刻。yyyy-mm-dd HH:MM:SS,sssの形式
コネクション情報 このパケットの送受信に使われたコネクションに関する情報
送受信種別 このJMSサーバでの受信か、このJMSサーバからの送信かを示す記号
記号 説明
<<<<**** JMSクライアントへ送信したパケット
>>>>**** JMSクライアントから受信したパケット
パケットダンプ メッセージID等、パケットの詳細情報
7.2.8.5. 自動生成送信先に関するプロパティ
プロパティ名
説 明 既定値
imq.autocreate.topic.consumerFlowLimit 自動生成されたTopicに接続されたConsumerが一回の送信処理で受信できるメッセージの最大数を指定します。 1000
imq.autocreate.queue.consumerFlowLimit 自動生成されたQueueに接続されたConsumerが一回の送信処理で受信できるメッセージの最大数を指定します。 100
imq.autocreate.queue.maxNumActiveConsumers 自動生成されたQueueでメッセージを受信するこのできるConsumerの最大数を指定します。-1は無制限です。 -1
imq.autocreate.queue.maxNumBackupConsumers 自動生成されたQueueで待機状態のConsumerの数を指定します。-1は無制限です。 0
imq.autocreate.destination.maxNumMsgs 自動生成される送信先の最大メッセージ数を指定します。-1は無制限です。 100000
imq.autocreate.destination.maxTotalMsgBytes 自動生成される送信先の最大メッセージサイズ (バイト、K バイト、または Mバイト単位) を指定します。-1は無制限です。
128,128bは128バイトを、128kは128Kバイト (128×1024=131072バイト)、128mは128Mバイト (128×1024×1024=134217728バイト) を表します。
10m
imq.autocreate.destination.maxNumProducers 自動生成される送信先に接続可能なプロデューサ数を指定します。-1は無制限です。 100
imq.autocreate.destination.maxBytesPerMsg 自動生成される送信先の1メッセージ当たりの最大サイズ (バイト、K バイト、または Mバイト単位) を指定します。-1は無制限です。
128,128bは128バイトを、128kは128Kバイト (128×1024=131072バイト)、128mは128Mバイト (128×1024×1024=134217728バイト) を表します。
10k
imq.autocreate.destination.limitBehavior 自動生成される送信先に対して新しいメッセージが届いたときに、送信先のメモリ制限のしきい値に到達していた場合のJMSサーバの振る舞いを指定します。
FLOW_CONTROL : プロデューサとの間でフロー制御 (低速化) を行います。
REMOVE_OLDEST : 最古のメッセージを破棄します (プロデューサがメッセージ削除の通知を受け取ることはありません)。REMOVE_LOW_PRIORITY : メッセージの有効期限に従い優先度が最低のメッセージを破棄します (プロデューサがメッセージ削除の通知を受け取ることはありません)。
REJECT_NEWEST : 最新のメッセージを拒否します (永続メッセージの場合はプロデューサにメッセージ拒否の例外が発生しますが、非永続メッセージの場合には発生しません)。
REJECT_NEWEST
7.2.8.6. クライアント監視に関するプロパティ
プロパティ名
説 明 既定値
imq.ping.enabled クライアントとの接続を監視するか否かを指定します。
true:行う
false:行わない
true
imq.ping.interval クライアントとの接続を監視する間隔を秒単位で指定します。 120

7.2.9. JMSクライアントのプロパティ

JMSクライアントのプロパティの一覧を示します。これらのプロパティは、非Java EE環境下で動作するJavaアプリケーションに有効であり、Javaシステムプロパティとして設定します。

ログの利用方法については、「 JMSクライアントのログ出力」を参照してください。

プロパティ名
説 明 既定値
wojms.client.logger.level JMSクライアントのログを採取する際のログレベル (NONE、ERROR、WARNING、INFO、DEBUG、DEBUGMED、DEBUGHIGHのいずれか) を指定します。
NONE:出力しない
NONE
wojms.client.logger.file wojms.client.logger.level プロパティでログレベルが指定された場合に、JMSクライアントのログを採取する際のログファイル名を指定します。ログレベルのみが指定され、ログファイル名が指定されていない場合は、標準出力に出力します。
wojms.client.logger.size wojms.client.logger.file プロパティでログファイル名が指定された場合に、出力先ファイルを切り替えるファイルサイズをバイト単位で指定します。-1は出力先の切替を行いません。 1020000
wojms.client.logger.num wojms.client.logger.file プロパティでログファイル名が指定された場合に、ログファイルのバックアップ数を指定します。 2
7.2.9.1. C言語アプリケーションプログラムのプロパティ

設定は、${AS_INSTALL}/jmq/etc/wojmscrt.conf ファイルで行います。

プロパティ名
説 明 既定値
java-classpath アプリケーション固有で利用する、Java クラスや jar ファイルを 環境変数 CLASSPATH 形式で指定します。 C言語ライブラリでは JVM を生成する際に、ここで指定した Java クラスを 優先的に利用するように構成します。
wojms-options JMS クライアントのプロパティを指定します。
jvm-options Java VM に渡す引数を指定します。
otx-jars JMSクライアントから利用するWebOTXのjarファイルが、${AS_INSTALL}からの相対パスで指定されています。変更しないでください。 jmq/lib/jmqclient.jar:lib/javaee.jar:lib/gf-client.jar
wojms-logsize ネイティブログ ( JVM 生成前や JVM のエラーが発生した場合にメッセージが出力されるログ ) の最大サイズを指定します。 1048576 (1MB)

7.3. その他の設定項目・設定方法

JMSサーバのその他の設定項目、および設定方法について説明します。

7.3.1. ファイルストアを利用するための設定

ファイルストアを利用するための設定について説明します。

  1. JMSサービスのMOに対して、次の属性を設定します。

    server.jms-service :
    属性名 説明 既定値
    storeType 永続ストアタイプを指定します。
    file:ファイルストア
    file

  2. JMSサービスを再起動してください。

インストール直後は、ファイルストアを利用する設定になっています。関連する、JMSサーバの各プロパティにはデフォルト値が設定されていますので、ご利用になるシステムに合わせて設定値を変更してください。ファイルストアをご利用になるためのプロパティの詳細については、「 JMSのプロパティ/属性一覧 > JMSサーバのプロパティ」-「 永続ストアに関するプロパティ」を参照してください。

Caution
ストアを変更 (ファイルストア⇔JDBCストア) する場合、それまでに永続化された情報 (メッセージ、送信先、永続サブスクリプション、トランザクション) は、変更先のストアには引き継がれません。

7.3.2. JDBCストアを利用するための設定

JDBCストアを利用するための設定について説明します。

インストール直後は、ファイルストアを利用する設定になっています。JDBCストアを利用する場合は、次の手順で設定を変更してください。

  1. JMSサービスのMOに対して、次の属性を設定します。

    server.jms-service :
    属性名 説明
    storeType 永続ストアタイプを指定します。指定可能な値は次のとおりです。
    file:ファイルストア
    oracle:JDBCストア (Oracle)
    postgresql:JDBCストア (PostgreSQL)
    jdbcStoreDriver JDBCドライバのクラス名
    jdbcStoreURL JDBC URL
    jdbcStoreUser ユーザ名
    jdbcStorePassword パスワード

  2. 次のパスにJDBCドライバのjarファイルのコピー、またはシンボリックリンクを配置します。
    JDK 8 の場合:
    ${INSTANCE_ROOT}/lib/ext

    JDK 11 以降の場合:
    ${INSTANCE_ROOT}/lib
    さらに、${INSTANCE_ROOT}/config/server.policy へのアクセス権設定も必要です。詳細は「 JDBCデータソース > クラスパス設定 > Java11以降におけるクラスパス設定 」を参照してください。

  3. jmqdbmgrコマンドのcreate tblサブコマンドを実行して、永続データを格納するためのデータベーススキーマを作成します。
    # jmqdbmgr create tbl -otxdomain domain1
    

    Memo
    jmqdbmgrコマンドを実行する際は、-otxdomainオプションにより、ドメイン名の指定が必要です。 jmqdbmgrコマンドの詳細については、「 コマンド > JMS > jmqdbmgr」を参照してください。

  4. ドメインを再起動してください。
Caution

7.3.3. アクセス制御機能を利用するための設定

JMS クライアントからの操作 (コネクション、送信先、送信先自動作成) に対するアクセス制御は、次の場所にあるアクセス制御プロパティファイルに定義します。
${INSTANCE_ROOT}/jmq/instances/jmqbroker/etc/accesscontrol.properties

定義変更は、JMSサービスの再起動により反映されます。

7.3.3.1. コネクションのアクセス制御

コネクションサービスへの権限を定義します。

形式 :
connection. resourceVariant.access.principalType = principals
要素
説明
resourceVariant コネクションのタイプを指定します。
NORMAL
ADMIN
access アクセス制御を指定します。
allow
deny
principalType 制御を受ける対象者を指定します。
user
group
principals 権限の制御を受ける対象を指定します。
principalTypeがuserの場合は、ユーザ名 (複数の場合はカンマで区切られたリスト) を指定します。
principalTypeがgroupの場合は、グループ名 (複数の場合はカンマで区切られたリスト) を指定します。
両者とも、全てを対象とする場合には”*”を使用します。

デフォルトでは、通常のコネクションは全てのユーザに権限が、管理用のコネクションはadminグループにのみ権限が与えられています。

connection.NORMAL.allow.user=*
connection.ADMIN.allow.group=admin

たとえば、通常のコネクション確立について、ユーザxxxを拒否するには、次の記述を追加します。

connection.NORMAL.deny.user=xxx

7.3.4. 送信先のアクセス制御

送信先に対する権限を定義します。

形式 :
resourceType.resourceVariant.operation.access.principalType = principals
要素
説明
resourceType 送信先のタイプを指定します。
queue
topic
resourceVariant 送信先の名前、もしくはすべての送信先を意味する”*”を指定します。
operation クライアントのタイプを指定します。
produce
consume
browse
access アクセス制御を指定します。
allow
deny
principalType 制御を受ける対象者を指定します。
user
group

デフォルトでは、すべてに権限が与えられています。

queue.*.produce.allow.user=*
queue.*.consume.allow.user=*
queue.*.browse.allow.user=*
topic.*.produce.allow.user=*
topic.*.consume.allow.user=*

たとえば、トピックxxxからのメッセージ受信について、グループyyyを拒否するには、次の記述を追加します。

topic.xxx.consume.deny.group=yyy

7.3.5. 送信先自動作成のアクセス制御

送信先の自動作成の権限を定義します。

形式 :
resourceType.create. access.principalType = principals
要素
説明
resourceType 送信先のタイプを指定します。
queue
topic
access アクセス制御を指定します。
allow
deny
principalType 制御を受ける対象を指定します。
user
group

デフォルトでは、すべてに権限が与えられています。

queue.create.allow.user=*
topic.create.allow.user=*

たとえば、topicの自動作成について、ユーザxxxを拒否するには、次の記述を追加します。

topic.create.allow.user=*
topic.create.deny.user=xxx

7.3.6. SSL通信を利用するための設定

JMSサーバとクライアントアプリケーションとの間、JMSサーバと管理ツールとの間で送受信されるメッセージをSSLで暗号化するために必要な設定について説明します。
前者はssljmsコネクションサービス、後者はssladminコネクションサービスが対象です。

  1. ${AS_INSTALL}/jmq/etc ディレクトリを作成

    ${AS_INSTALL}/jmq/etc ディレクトリが存在しない場合は、作成してください。

  2. 自己署名型証明書の生成

    JDK付属の keytool コマンドを利用し、次を実行して、JMSサーバの自己署名型証明書を生成してください。

    keytool -genkey -keyalg "RSA" -alias jmq -keystore ${AS_INSTALL}/jmq/etc/keystore -v

    証明書が格納されるキーストアの位置は次の場所となります。
    ${AS_INSTALL}/jmq/etc/keystore

  3. SSLコネクションサービスの有効化
    imq.service.activelistプロパティにより、SSLコネクションサービスを有効化します。次のいずれかの方法で指定してください。
    1. 起動引数で指定する方法
      次のオプションをJMSサーバの起動引数に指定してください。ここでは、jms、adminの両方のSSLコネクションサービスを有効化しています。

      -Dimq.service.activelist=jms,admin,ssljms,ssladmin

      運用管理コマンドで指定する場合は、JMSサービスの「start-args」属性に、統合運用管理ツールで指定する場合は、JMSサービスのMO属性「起動引数」に上記を設定してください。

    2. config.propertiesに設定する方法
    3. 次のプロパティを設定してください。ここでは、jms、adminの両方のSSLコネクションサービスを有効化しています。

      imq.service.activelist=jms,admin,ssljms,ssladmin

    実際に有効になったかどうかは、JMSサーバ再起動後に、jmqcmd list svcコマンドで確認することができます。jmqcmd list svcコマンドの詳細は、「 コマンド > JMS > jmqcmd > list svc」を参照してください。

  4. パスワードの設定
    JMSサービスのMOに対して、次の属性を設定します。自己署名型証明書の生成時に指定した、キーストアのパスワードを設定してください。

    server.jms-service :
    属性名 説明 既定値
    keystorePassword SSL ベースのサービスの場合に、キーストアのパスワードを指定します。

  5. JMSサーバの再起動
    JMSサーバを再起動し、設定内容を反映します。

  6. JMSクライアントの設定
    クライアントの設定は、Javaアプリケーションの場合と、Java EE環境下で動作するJava EEアプリケーションの場合で方法が異なります。

    1. Javaアプリケーションの場合
      コネクションファクトリに次の属性値を設定してください。
      wojmsConnectionType=TLS

      この設定を有効にするには、次の2つの方法があります。
      • JNDIに登録するオブジェクトに設定する方法
        コネクションファクトリリソースの場合は、MO属性「コネクションタイプ (wojmsConnectionType) 」で指定します。

      • Javaクライアントアプリケーション起動時にJavaシステムプロパティで指定する方法
        通常はJNDIに登録されたオブジェクトにあらかじめ設定された属性値に従って暗黙的に決まりますが、これをJavaシステムプロパティとして与えることによって、起動時に自由に選択することができます。

    2. Java EEアプリケーションの場合
      コネクションファクトリリソースの プロパティとして、
      MessageServiceAddressList=<wojmsBrokerHostName>:<wojmsBrokerHostPort>/ssljms
      を設定してください。<wojmsBrokerHostName>は「JMSサーバのホスト名」の値を、<wojmsBrokerHostPort>は「JMSサーバのホストのポート番号」の値を指定します。
      7.3.6.1. 補足 : コネクションファクトリリソースに対するプロパティ設定
      統合運用管理ツールの場合
      「WebOTX 管理ドメイン [ <ホスト名> ] 」-「<ドメイン名>」-「リソース」-「JMS リソース」-「コネクションファクトリリソース」-「<JNDI 名>」-【プロパティの設定】操作で設定します。

      運用管理コマンドの場合
      次のように、set コマンドを利用して設定します。
      otxadmin> set server.resources.jms-resource.jms-connection-factory.<JNDI 名>. property.MessageServiceAddressList= <wojmsBrokerHostName>:<wojmsBrokerHostPort>/ssljms

      例) デフォルトの接続先 (ホスト名:localhost、ポート番号:9700) にSSLで接続する場合
      otxadmin> set server.resources.jms-resource.jms-connection-factory.jms/MyCF.property.MessageServiceAddressList=localhost:9700/ssljms
      

7.3.7. Standard で動作させる場合の設定

Standard において、TPモニタ上でMessage-Driven Bean (MDB)を起動する場合の設定について説明します。

7.3.7.1. MDBでTopicのマルチコンシューマ負荷分散を利用する場合

MDBでTopicのマルチコンシューマ負荷分散を利用するには、クライアント識別子とその共有フラグを以下に示すいずれかの方法で設定する必要があります。

  1. 配備記述子での設定
    ejb-jar.xml中の<activation-config-property>を利用して、以下のプロパティを設定します。

    プロパティ
    clientId クライアント識別子
    enableSharedClientID true

    具体例は、以下の通りです。

    <?xml version="1.0" encoding="UTF-8"?>
    <ejb-jar>
     <enterprise-beans>
      <message-driven>
       <ejb-name>MyMDB</ejb-name>
       ・・・・・
       <activation-config>
        <activation-config-property>
         <activation-config-property-name> clientId</activation-config-property-name>
         <activation-config-property-value> MyClientID</activation-config-property-value>
        </activation-config-property>
        <activation-config-property>
         <activation-config-property-name> enableSharedClientID</activation-config-property-name>
         <activation-config-property-value> true</activation-config-property-value>
        </activation-config-property>
        ・・・・・
       </activation-config>
      </message-driven>
     </enterprise-beans>
    </ejb-jar>

  2. アノテーションでの設定
    @ActivationConfigPropertyを利用して、以下のプロパティを設定します。

    プロパティ
    clientId クライアント識別子
    enableSharedClientID true

    具体例は、以下の通りです。

    @MessageDriven(
      activationConfig = {
        @ActivationConfigProperty(propertyName="clientId", propertyValue="MyClientID"),
        @ActivationConfigProperty(propertyName="enableSharedClientID", propertyValue="true"),
        ・・・・・
      }
    )
    public class MyMDB implements MessageListener {
      public void onMessage(Message msg) {・・・・・}
    }

  3. プロセスグループでの設定
    プロセスグループのシステムプロパティに以下のプロパティを指定してください。 同じプロセスグループの中で複数のMDBが配備されるような場合、クライアント識別子の共有範囲が複数のMDB間にまたがることに注意してください。
    プロパティ
    設定値
    wojmsConfiguredClientID クライアント識別子
    wojmsEnableSharedClientID true

7.3.8. メッセージ再配信に関する設定

ここでは、ロールバックされたメッセージの再配信に関する設定について説明します。

7.3.8.1. 再配信回数

再配信回数の上限は、送信先か、JMSサービスのMOの属性で指定します。送信先で指定した場合は、その送信先に接続したコンシューマに対して有効になり、JMSサービスで指定した場合は、JMSサーバで動作するコンシューマ全体に対して有効になります。既定値以外の値が設定されていた場合の優先順位は、高いものから、送信先、JMSサービスの設定となります。

server.jms-physical-destination. physical-destination-name
server.jms-service :
属性名 説明 既定値
wojmsRedeliveryLimit 再配信回数上限。メッセージ再配信回数の上限を指定します。-1は無制限を、0は再配信なしを意味します。 -1 (無制限)

Memo
送信先、JMSサービスともに属性名は同じです。

7.3.8.2. 再配信遅延時間

再配信の遅延時間は、コネクションファクトリリソース、送信先、JMSサービスのMOの属性で指定します。また、コンシューマプログラム向けに用意しているAPI (WebOTX V5よりサポート) で、セッション単位に指定することも可能です。既定値以外の値が設定されていた場合の優先順位は、高いものから、セッション単位、コネクションファクトリリソース、送信先、JMSサービスの設定となります。

server.resources.jms-resource.jms-connection-factory. connection-factory-name
server.jms-physical-destination. physical-destination-name
server.jms-service :
属性名 説明 既定値
wojmsRedeliveryDelay 再配信遅延時間。メッセージ再配信で、配信の遅延時間を秒単位で指定します。0は、待ち合わせ無しを意味します。 0 (待ち合わせ無し)

Memo
コネクションファクトリリソース、送信先、JMSサービスともに属性名は同じです。

セッション単位で指定する場合については、 [ リファレンス > リソース > JMS > 拡張インタフェース ] を参照してください。

7.3.8.3. MDBで再配信遅延時間を指定する場合

MDBに対して再配信遅延時間を指定するには、以下に示す方法があります。優先順位は、高いものから順に、1、2、3 となっており、以下のいずれも指定されていない場合は、前述の指定に従って再配信されます。

  1. 配備記述子での設定
    ejb-jar.xml中の<activation-config-property>を利用して、以下のプロパティを設定します。
    プロパティ
    説明
    RedeliveryDelay 再配信遅延時間 (秒)

    具体例は、以下の通りです。

    <?xml version="1.0" encoding="UTF-8"?>
    <ejb-jar>
     <enterprise-beans>
      <message-driven>
       <ejb-name>MyMDB</ejb-name>
       ・・・・・
       <activation-config>
        <activation-config-property>
         <activation-config-property-name> RedeliveryDelay</activation-config-property-name>
         <activation-config-property-value> 10</activation-config-property-value>
        </activation-config-property>
        ・・・・・
       </activation-config>
      </message-driven>
     </enterprise-beans>
    </ejb-jar>

  2. アノテーションでの設定
    @ActivationConfigPropertyを利用して、以下のプロパティを設定します。
    プロパティ
    説明
    RedeliveryDelay 再配信遅延時間 (秒)

    具体例は、以下の通りです。

    @MessageDriven(
      activationConfig = {
        @ActivationConfigProperty(propertyName="RedeliveryDelay", propertyValue="10"),
        ・・・・・
      }
    )
    public class MyMDB implements MessageListener {
      public void onMessage(Message msg) {・・・・・}
    }

  3. プロセスグループでの設定
    プロセスグループの Java システムプロパティに以下のプロパティを指定してください。
    プロパティ
    説明
    wojmsRedeliveryDelay 再配信遅延時間 (秒)

7.3.9. 破棄メッセージの転送に関する設定

ここでは、破棄メッセージの転送に関する設定について説明します。「破棄メッセージ」とは、不達メッセージ (再配信回数を超過したメッセージ) や、有効期限切れのメッセージのことをさします。

7.3.9.1. 不達メッセージ
不達メッセージの転送先は、送信先か、JMSサービスのMOの属性で指定します。送信先で指定した場合は、その送信先の不達メッセージに対して有効になり、JMSサービスで指定した場合は、JMSサーバ内のすべての不達メッセージに対して有効になります。転送先が設定されていた場合の優先順位は、高いものから、送信先、JMSサービスの設定となります。

server.jms-physical-destination. physical-destination-name
server.jms-service :
属性名 説明 既定値
wojmsRedeliveryDestination 不達メッセージ転送先。再配信回数を超過したメッセージを転送する送信先名を指定します。ここに指定する送信先は、あらかじめ作成しておく必要があります (自動的に作成されません)。  

Memo
送信先、JMSサービスともに属性名は同じです。

7.3.9.2. 有効期限切れメッセージ
有効期限切れメッセージの転送先は、JMSサービスのMOの属性で指定します。ここで指定した値は、JMSサーバ全体で有効になります。

server.jms-service :
属性名 説明 既定値
wojmsExpirationDestination 有効期限切れメッセージを転送する送信先名  
Caution

移動したメッセージのメッセージヘッダと、メッセージプロパティの扱いについて、以下に記述します。
7.3.9.3. JMSのメッセージヘッダ:
フィールド名
JMSCorrelationID 変更しません。
JMSDeliveryMode PERSISTENTに変更します。
不達メッセージの場合、元の情報は、WOJMSOriginalPersistentにBoolean値で設定されます。trueはPERSISTENT、falseはNON_PERSISTENTです。
JMSDestination 転送先の送信先に変更します。
元の情報は、WOJMSOriginalDestinationNameに送信先名を含めて設定されます。
JMSExpiration クリアします。
不達メッセージの場合、元の情報は、WOJMSOriginalExpirationに設定されます。
JMSMessageID 変更しません。
JMSPriority 変更しません。
JMSRedelivered 変更しません。
JMSReplyTo 変更しません。
JMSTimestamp 移動した時刻に変更します。
不達メッセージの場合、元の情報は、WOJMSOriginalTimeStampに設定されます。
JMSType 変更しません。
7.3.9.4. JMSのメッセージプロパティ:
フィールド名
WOJMSDelayTime 削除します。
不達メッセージの場合、元の情報は、WOJMSOriginalDelayTimeに設定されます。
WOJMSOriginalMessageID 転送前のJMSMessageIDを格納します。
WOJMSOriginalDestinationName 転送前のJMSDestinationから取得した送信先名と送信先タイプを連結した文字列を格納します。
WOJMSDeletedReason メッセージの削除理由を文字列で格納します。
不達メッセージの設定値: DELETED
有効期限切れメッセージの設定値: EXPIRED
WOJMSOriginalExpiration 不達メッセージの場合、転送前のJMSExpirationの値を格納します。
WOJMSOriginalPersistent 不達メッセージの場合、転送前のJMSDeliveryModeの値をBoolean値で格納します。trueはPERSISTENT、falseはNON_PERSISTENTです。
WOJMSOriginalTimeStamp 不達メッセージの場合、転送前のJMSTimestampの値を格納します。
WOJMSOriginalDelayTime 不達メッセージの場合、転送前のWOJMSDelayTimeの値を格納します。

7.3.10. JMSクライアントのログ出力

非Java EE環境下で動作するJavaアプリケーションでは、実行時にJavaシステムプロパティを設定することにより、ログ出力が可能です。ログは、障害解析などに利用します。
ログを出力するには、以下をJavaシステムプロパティとして指定します。

wojms.client.logger.level
wojms.client.logger.file
wojms.client.logger.size
wojms.client.logger.num

各プロパティの詳細については、「 JMSクライアントのプロパティ」を参照してください。

7.3.11. 分散トランザクションへの参加

Java EE環境で、JMSを分散トランザクションに参加させる場合、トランザクションサービスのJCAリソースを登録する必要があります。
JCAリソースの登録方法については、「 構築・運用 > Transactionサービス > リソースの登録・削除」を参照してください。

Caution

7.3.12. JMSサーバクラスタを利用するための設定

ここでは、2つのJMSサーバで構成されるJMSサーバクラスタの設定方法について説明します。
設定は、以下のように、host1のdomain1で起動するJMSサーバ (JMS1) と、host2のdomain1で起動するJMSサーバ (JMS2) でJMSサーバクラスタを構成するものとします。また、マスターブローカとして、host1-domain1上のJMSサーバを指定します。

JMSサーバクラスタを利用するための設定

  1. host1-domain1、host2-domain1のJMSサーバの設定

    統合運用管理ツールの場合
    「WebOTX 管理ドメイン [ <ホスト名> ] 」-「<ドメイン名>」-「アプリケーションサーバ」-「JMS サービス」の「クラスタ」タブの各属性に対して、以下を設定します。

    項目 設定値
    JMSサーバクラスタの使用 true (チェックする)
    クラスタに属するJMSサーバのアドレスリスト host1:9700,host2:9700
    マスターブローカのアドレス host1:9700

    運用管理コマンドの場合
    set コマンドで以下を設定します。
    otxadmin> set server.jms-service.enableCluster=true
    otxadmin> set server.jms-service.clusterBrokerList=host1:9700,host2:9700
    otxadmin> set server.jms-service.clusterMasterBroker=host1:9700
    
    Caution

    同一ホストでJMSサーバクラスタを構成する場合、上記の設定に加えて、次の設定が必要です。

    • JMSサーバインスタンス識別子をホスト内で一意となるように設定してください。設定方法は次のとおりです。

      統合運用管理ツールの場合
      「WebOTX 管理ドメイン [ <ホスト名> ] 」-「<ドメイン名>」-「アプリケーションサーバ」-「JMS サービス」-【プロパティの設定】操作で、以下を設定します。
        instance-name=<JMSサーバインスタンス識別子>

      運用管理コマンドの場合
      set コマンドで以下を設定します。
        otxadmin> set server.jms-service.property.instance-name=<JMSサーバインスタンス識別子>

    • 2つ目以降のドメインに対して、クラスタコネクションサービスのポート番号 (既定値は、9705) を変更してください。

      統合運用管理ツールの場合
      「WebOTX 管理ドメイン [ <ホスト名> ] 」-「<ドメイン名>」-「アプリケーションサーバ」-「JMS サービス」-「クラスタコネクションサービスのポート番号」 を変更します。

      運用管理コマンドの場合
      set コマンドで以下を設定します。
        otxadmin> set server.jms-service.clusterPort=<クラスタコネクションサービスのポート番号>


  2. JMSサーバの再起動
    クラスタの設定は、JMSサーバの再起動後に有効になるため、すべてのJMSサーバを再起動します。

    Caution
    • マスターブローカを設定した場合は、マスターブローカが停止中、クラスタ内のJMSサーバでは次の操作ができなくなります。それ以外の操作は正常に行えます。
        - 物理的な送信先の生成/削除/プロパティ更新
        - 永続サブスクリプションの削除

7.3.13. 接続先分散のための設定

JMSサーバクラスタなどで、接続先の分散を行うためにアドレスリストを使用することができます。アドレスリストは、コネクションファクトリリソースの属性として設定します。

server.resources.jms-resource.jms-connection-factory. connection-factory-name
属性名 説明 既定値
wojmsAddressList 接続先のリストを指定します。
この値を設定した場合は、「JMSサーバのホスト名」 (wojmsBrokerHostName) と、「JMSサーバのホストのポート番号」 (wojmsBrokerHostPort) の設定は無視されますので、必要に応じてこの接続先をリストに含めてください。
アドレスの構文は、 [ hostName ] [ :port ] で、複数のアドレスを指定する場合は、「,」で区切ります。
wojmsAddressListBehavior アドレスリストから、接続先を選択する方法を指定します。
PRIORITY:アドレスリストに指定された順番
RANDOM:ランダムに選択
接続障害後の再接続は、いずれの場合も、接続がエラーになったJMSサーバに対するアドレスから始まります。
PRIORITY
wojmsAddressListIterations 接続の試行を中止して例外を通知するまでの、アドレスリストの繰り返し回数を指定します。 1

次に、アドレスリストを設定した場合の動作について説明します。

JMSクライアントランタイムは、wojmsAddresListBehaviorの設定に応じて、wojmsAddressListから接続先を選択し接続を行います。最初に選択したアドレスで接続できなかった場合は、wojmsAddressListから「次の」アドレスを選択して接続を試みます。それでも接続できなければ「次の」アドレス、と進めていき、wojmsAddressListIterations回アドレスリストを繰り返して接続できなければ、例外を発生させるようになっています。


7.3.14. 再配信メッセージの順序保証のための設定

アプリケーション異常など、トランザクションのロールバックによりメッセージが再配信される場合でもメッセージの配信順序を保証したい場合は、物理的な送信先に対して次の設定を行います。

server.jms-service.jms-physical-destination. physical-destination-name
属性名 説明 既定値
supportOrderedRedelivery メッセージ再配信時の順序保証を行うかどうかを指定します。
true:再配信時の順序保証を行います。接続できるコンシューマ数は1になります。
false:再配信時の順序保証を行いません。
false (再配信時の順序保証はしない)

Caution
順序保証の設定を変更する場合は、送信先のコンシューマ数が 1 以下の状態で行ってください。 複数のコンシューマが接続しているときに順序保証の設定を有効にしても、設定は無視されます。

7.3.14.1. 再配信メッセージの順序保証の利用条件
再配信メッセージの順序保証が利用できるのは、次の環境に制限されます。
  1. 送信先タイプはキューであること
    JMSサーバクラスタ構成では、送信先の「ローカル配信のみ (isLocalOnly) 」の 設定を有効 (true) にして、ローカルコンシューマ (送信先が作成されたブローカに 接続しているコンシューマ) だけにメッセージを配信するようにおく必要があります。
  2. コンシューマのメッセージ受信がトランザクション内で行われていること
  3. 送信先に接続するコンシューマ数は 1 であること
    送信先に接続できるコンシューマ数は、1 に制限されます。また、MDBの場合は、多重度を 1 に制限しておく必要があります。

7.3.14.2. 再配信メッセージの順序保証の利用時の動作
再配信メッセージの順序保証を利用する場合、各設定が行われたメッセージは次のようになります。
優先度を設定したメッセージ
1 件目は優先度の最も高いものがコンシューマに配信されます。 コンシューマがそのメッセージをロールバックした場合は、優先度を無視して そのメッセージが再配信されます。 2 件目は、その次に優先度の高いものが配信されます。


配信時間を設定したメッセージ
1 件目は、最初に指定時刻に達したメッセージがコンシューマに配信されます。 コンシューマがそのメッセージをロールバックすると、配信時間を無視して そのメッセージが再配信されます。 コンシューマがメッセージをロールバックしている間は、他のメッセージが 指定時刻になっても配信されません。 2 件目は、その次に指定時刻に達したものが配信されます。


有効期限を設定したメッセージ
メッセージの再配信中に有効期限が切れた場合は、 そのメッセージが破棄 (または、転送) され、コンシューマには、その次の メッセージが配信されます。


再配信回数、再配信遅延時間、破棄メッセージ転送先の設定
いずれの設定も有効になります。 コンシューマが 1 件目のメッセージを受信後、ロールバックすると、 遅延時間に指定した時間だけ待ってそのメッセージが再配信され、 再配信回数の上限を超えると、そのメッセージは破棄 (または、転送) されます。 その後、キュー内の 2 件目のメッセージが配信されます。


7.3.15. ActivationSpec に設定可能なプロパティ

JMS リソースアダプタの ActivationSpec に設定可能なプロパティは次のとおりです。

プロパティ名 説 明 既定値
destination 送信先名を指定します。  
destinationType 送信先のタイプを指定します。
javax.jms.Queue:キュー
javax.jms.Topic:トピック
 
messageSelector メッセージセレクタを指定します。  
subscriptionName Topicサブスクリプション名を指定します。  
subscriptionDurability Topicサブスクリプションの持続性を指定します。
Durable:持続性
NonDurable:非持続性
NonDurable
clientId クライアントIDを指定します。  
acknowledgeMode 確認応答モードを指定します。
Auto-acknowledge: Auto-acknowledge モード
Dups-ok-acknowledge: Dups-OK-acknowledge モード
Auto-acknowledge
endpointExceptionRedeliveryAttempts MDBで実行時例外が発生した場合にアダプタ内で再配信する回数を指定します。コンテナ管理トランザクション NotSupported あるいは、Bean管理トランザクションの場合に有効になります。 1
redeliveryDelay MDBで実行時例外が発生した場合にアダプタ内で再配信する間隔 (秒) を指定します。0は待ち合わせなしを意味します。 0
endpointPoolMaxSize エンドポイントプールで保持されるエンドポイントの最大数を指定します。 15
endpointPoolSteadySize エンドポイントプールで保持されるエンドポイント初期値を指定します。 10