4.7. 完全修飾キュー名の指定
内部的には、ブローカーはアドレスのクライアント要求を特定のキューにマッピングします。ブローカーは、メッセージの送信先となるキューまたはメッセージを受信するキューをクライアントに代わって決定します。ただし、より高度なユースケースでは、クライアントが直接キューを指定する必要がある場合があります。このような場合、クライアントは、アドレス名とキュー名の両方を ::
で区切って指定して、完全修飾キュー名 (FQQN) を使用できます。
前提条件
アドレスが、2 つ以上のキューで設定されている。以下の例では、アドレス
foo
にq1
とq2
の 2 つのキューがあります。<configuration ...> <core ...> ... <addresses> <address name="foo"> <anycast> <queue name="q1" /> <queue name="q2" /> </anycast> </address> </addresses> </core> </configuration>
手順
クライアントコードで、ブローカーから接続を要求する際に、アドレス名とキュー名の両方を使用します。以下の Java コードの例のように、2 つのコロン
::
を使用して名前を区切ることを忘れないでください。String FQQN = "foo::q1"; Queue q1 session.createQueue(FQQN); MessageConsumer consumer = session.createConsumer(q1);