我有一个 MDB,它在 glassfish 上部署时管理使用 ActiveMQ 咨询消息。
但是当我在 tomEE 上部署时,这个 MDB 不会消耗任何咨询消息。有什么我需要打开的吗?
@MessageDriven(mappedName = "ActiveMQ.Advisory.Consumer.Queue", activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Topic"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "ActiveMQ.Advisory.Consumer.Queue.User.*") })
public class AdvisoryMdb implements MessageListener {
private final Logger logger = LoggerFactory.getLogger(getClass().getName());
@Override
public void onMessage(Message message) {
logger.info("onMessage() {}", message);
}
}
(在 TomEE 中,我设法成功地在我想要咨询的这些队列上生成和使用消息)
编辑:我测试了使用独立客户端使用这些咨询主题之一,并按预期获得了消息。因此,咨询消息已成功发送,只是我的 mdb 没有正确接收它们。