我在 jbossmq-destinations-service.xml 中配置了我的主题,如下所示:
<mbean code="org.jboss.mq.server.jmx.Topic"
name="jboss.mq.destination:service=Topic,name=myTopicName">
<depends optional-attribute-name="DestinationManager">
jboss.mq:service=DestinationManager</depends>
<depends optional-attribute-name="SecurityManager">
jboss.mq:service=SecurityManager</depends>
<attribute name="SecurityConf">
<security>
<role name="guest" read="true" write="true" create="true"/>
<role name="publisher" read="true" write="true" create="false"/>
<role name="durpublisher" read="true" write="true" create="true"/>
</security>
</attribute>
</mbean>
通过对主题名称进行 JNDI 查找,我可以轻松地连接到主题以发布消息,并且一切正常。
但是,我希望能够以特定间隔清除消息,因为它们可能会根据其他一些系统功能而过时,但我找不到任何示例或说明如何执行此操作。
问题是,当我对主题进行 JNDI 查找时,它会返回一个 org.jboss.mq.SpyTopic,它没有任何删除消息的功能,甚至不知道该主题上有多少消息。所有示例似乎都表明 org.jboss.mq.server.JMSTopic 具有所有功能,但我不知道如何将 SpyTopic 转换为 JMSTopic 或如何设置主题以便 JNDI 查找将返回JMSTopic。
任何人都可以帮忙吗?
谢谢。