トピック A とキュー B の間に作成されたブリッジがあります。トピック A にはメッセージがありますが、キュー B にはありません。キュー B は、これらのメッセージがトピック A にヒットした後に作成されました。これらのメッセージをキューに入れる方法はありますか?
1005 次
1 に答える
1
トピックは、キューのようにサブスクライバーへのメッセージを「保持」しません。したがって、メッセージはもう「存在」しません。
トピックをサブスクライブすると、セッションが継続している限り、そのトピックに送信されたすべてのメッセージのみを受け取ることになります。
唯一の例外は「永続サブスクリプション」です。最後のケースでは、システムは各永続サブスクライバーに送信されるメッセージの「キュー」を作成します...そしてセッションが終了すると、保留中の「トピック」メッセージはサブスクライバーを待ちます。
あなたの場合、関係するメッセージがトピックAにヒットした後にキューBが存在したため...ブリッジ(この場合はサブスクライバー)がその時点では存在しなかったため、メッセージはすでにキューBに「失われています」。
リンクを参照してください: http://docs.oracle.com/javaee/1.3/jms/tutorial/1_3_1-fcs/doc/basics.html
于 2013-09-24T13:34:19.283 に答える