2

我在主题 A 和队列 B 之间创建了一座桥梁。主题 A 上有消息,但队列 B 没有。队列 B 是在这些消息到达主题 A 之后创建的。有没有办法让这些消息进入队列?

4

1 回答 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 回答