3.4.4 キュー定義ファイルの作成(永続版リソースアダプタの場合)
キュー定義ファイルは,JNDIネーミングサービスに登録するキュー表示名と実際のキュー名を関連づけるファイルです。テキストファイルで作成して,任意のディレクトリに格納してください。キュー定義ファイルのフルパスをQueueConfigFileNameプロパティに指定すると,Reliable Messagingの開始時に,定義されたキュー表示名がJNDIネーミングサービスに登録されます。
なお,キュー作成時の表示名を利用する場合,キュー定義ファイルの作成は不要です。
(1) キュー定義ファイルの記述形式
記述形式
QueueImplClass = jp.co.Hitachi.soft.reliablemessaging.ra.jms.QueueImpl※1 Queue.通番※2.DisplayName = キュー表示名※3 Queue.通番.QueueName = キュー名※4
- 注※1
-
ユーザの環境に依存しない固定の値です。
- 注※2
- 注※3
-
キュー表示名はJNDIネーミングサービスに"<Reliable Messagingの表示名>__<キュー表示名>__que"の形式で登録されます。なお,"<Reliable Messagingの表示名>__<キュー表示名>__que"の形式の文字列の長さが256文字を超えないようにしてください。
<Reliable Messagingの表示名>は,Connector属性ファイルの<display-name>タグの指定値をサニタイズ(半角英数字以外をアンダスコア(_)に変更)した値です。<display-name>タグの初期値は"Cosminexus_Reliable_Messaging"です。Connector属性ファイルについては,マニュアル「アプリケーションサーバ リファレンス 定義編(アプリケーション/リソース定義)」を参照してください。
<キュー表示名>には,アンダスコア二つ(__)を指定しないでください。
- 注※4
(2) キュー定義ファイルの記述例
QueueImplClass = jp.co.Hitachi.soft.reliablemessaging.ra.jms.QueueImpl Queue.1.DisplayName = Q1 Queue.1.QueueName = Queue1 Queue.2.DisplayName = Q2 Queue.2.QueueName = Queue2
(3) キュー定義ファイルの作成規則
-
java.util.Properties.load()メソッドで読み取りできる形式にしてください。コメントや継続行の扱いも同様です。
-
QueueImplClassの指定がない場合および値が指定されていない場合はデプロイ時にエラーが発生します。
-
一つのキューについてDisplayNameおよびQueueNameの両方を指定してください。
-
同一のプロパティを複数記述した場合は,どの値が有効になるか保証しません。
-
通番は1から指定してください。通番1のキュー定義がない場合はデプロイ時にエラーが発生します。
-
Queue.n.DisplayNameの指定がない場合および値が指定されていない場合,通番がn-1番目のキューまでが有効になります。通番n以降のキュー定義は無視されます。
-
QueueNameの指定がない,または値が指定されていないキューは無視されます。
-
キュー定義が一つもない場合はフォーマット不正によってデプロイ時にエラーが発生します。
-
表示名が重複した場合,通番の大きい方が有効になります。
-
通番の最大値より大きい値のキュー定義は無視されます。
-
DisplayNameに指定できる文字は,半角英字(A〜Z,a〜z)半角数字(0〜9)および半角のアンダスコア(_)です。これら以外の文字を指定したキューは無視されます。
-
QueueNameに指定する値は,大文字と小文字をhrmmkqueコマンド引数指定値と一致させてください。