我正在使用weblogic 10.3。 我试图配置一个持久的消息,由jdbc存储支持(在Oracle数据库中)的持久订阅。我有一个MDB正在倾听的主题是持久订阅者。 在情景-1下:如果我发送消息,它会击中MDB。JMS持久订阅者持久性消息不会持久存在数据库中
在情景-2下:我暂停了MDB,希望邮件发送到主题时只要它们不被MDB(这是唯一注册的持久订阅者)所使用,就会停留在周围。但是当我将消息发送给主题时,它会在那里简要显示,然后消失(我使用HermesJMS来看它)。
我的印象是,由于MDB没有使用这些消息,因此在这种情况下会记录到JDBC存储中,但是oracle db中的WLSTORE表并没有得到任何消息。
我后来发现消息显示在主题>持久订阅者>在管理控制台中显示消息。
因此,显然发生了什么事情是主题不保留消息,而是在其下面注册的持久订阅保留它,直到消息消耗完。
问题-1)但是消息不会去基于Oracle的jdbc存储的事实仍然没有意义?我在这里做错了什么?
问题-2)即使当我恢复MDB开始侦听邮件时,该主题仍然显示持久订阅者(管理控制台)下的所有邮件仍然完好无损 - 我希望他们会从那里移除因为他们被唯一注册的耐用用户处理。