2.2.3 キュー定義ファイルの作成(JMSインタフェース用)
JMSインタフェースを使用する場合は,キュー定義ファイルでアプリケーションが使用するキューを定義しておく必要があります。
キュー定義ファイルはテキストエディタを使用して作成します。キュー定義ファイルの名称および格納先ディレクトリは任意です。作成したキュー定義ファイルは,TP1/Message Queue Accessの環境変数QueueConfigFileNameでキュー定義ファイル名を指定することによって有効になります。キュー定義ファイルはTP1/Message Queue Accessの起動時に読み込まれます。キュー定義ファイルの記述形式が不正な場合は,TP1/Message Queue Accessの起動に失敗します。
(1) キュー定義ファイルの記述形式
QueueImplClass=QImpl名※1 Queue.通番※2.DisplayName=キューの表示名※3 Queue.通番.QueueName=キュー名称※4 Queue.通番.QueueManagerName=キューマネジャ名称※5
- 注※1
-
QImpl名は「jp.co.Hitachi.soft.mqadaptor.QueueImpl」固定です。
- 注※2
-
通番には,1〜20480の範囲の値を指定してください。
この値は,連番になるように設定してください。連番で指定していない場合,アプリケーションのデプロイ実行時にエラーとなります。
- (例)
Queue.1.DisplayName=Que1 Queue.1.QueueName=Queue1 Queue.1.QueueManagerName=QMgr1 Queue.2.DisplayName=Que2 Queue.2.QueueName=Queue2 Queue.3.QueueManagerName=QMgr1
- 注※3
-
CosminexusのNameSpaceには,「TP1_Message_Queue_Access_表示名_que」の値で登録されます。
- 注※4
-
キュー名称には,モデルキュー以外のキューを指定してください。
- 注※5
-
キューマネジャ名称には,接続先のキューマネジャ名称を指定してください。
(2) キュー定義ファイルの記述例
QueueImplClass=jp.co.Hitachi.soft.mqadaptor.QueueImpl Queue.1.DisplayName=Que1 Queue.1.QueueName=Queue1 Queue.1.QueueManagerName= Queue.2.DisplayName=Que2 Queue.2.QueueName=Queue2 Queue.2.QueueManagerName= Queue.3.DisplayName=Que3 Queue.3.QueueName=Queue3 Queue.3.QueueManagerName=
(3) キュー定義ファイルの作成規則
-
コメントや継続行の記述も含めて,java.util.Propertiesクラスのloadメソッドで読み出しできる形式で作成してください。
-
QueueImplClassの指定がない場合,またはQueueImplClassの値が指定されていない場合はデプロイがエラーになります。
-
個々のキューごとに,DisplayName,QueueName,およびQueueManagerNameのそれぞれを指定してください。
-
Queue.n.DisplayNameの指定がない場合,またはQueue.n.DisplayNameの値が指定されていない場合は,通番がn-1のキューまでが有効になります。この場合,通番n以降のキュー定義は無視されます。
-
QueueNameの指定がない,またはQueueNameの値が指定されていないキューは無効になります。
-
QueueManagerNameの指定がない,QueueManagerNameの値が指定されていない,またはすべて空白が指定されているキューは,デフォルトのキューマネジャが指定されたものと認識されます。
-
同一のプロパティを複数記述した場合は,どの値が有効になるか保証されません。
-
キュー定義が一つもない場合は,フォーマット不正となります。
-
表示名が重複した場合,通番の大きい方が有効となります。
-
DisplayNameに指定できる文字は,半角英字(A〜Z,a〜z),半角数字(0〜9),および半角のアンダスコア(_)です。それ以外の文字を指定したキューは無効になります。
-
キュー名称には,モデルキューは指定しないでください。モデルキューを指定した場合,該当するモデルキューを指定したcreateSender,createReceiver,およびcreateBrowser,ならびにQueue指定のsendが発行されると,InvalidDestinationExceptionがスローされます。