我正在尝试实现一个服务,它监听一个主题以接收发送到该主题的消息。代码很简单:
@MessageDriven(mappedName="jms/TEST", activationConfig={
@ActivationConfigProperty(propertyName="destinationType",propertyValue="javax.jms.Topic"),
@ActivationConfigProperty(propertyName="subscriptionName",propertyValue="TEST")
})
public class MessageListener implements MessageListener {
private static final Logger logger = Logger.getLogger(MessageListener.class);
@Override
public void onMessage(Message arg0) {
logger.info("Receiving " + arg0);
}
}
侦听器部署在 Glassfish 上。在 Glassfish 中,我还添加了一个管理对象资源:
JNDI Name: jms/TEST
Resource Adaptor: jmsra
Resource Type: javax.jms.Topic
Class Name: com.sun.messaging.Topic
Name: TEST
Physical Name: TEST
我还有另一项服务,也在 Glassfish 中,向主题 TEST 发送消息。但是,我的听众根本没有收到任何消息。我在不使用消息驱动 Bean 的情况下创建了另一个侦听同一主题的服务,并且能够接收,即发送消息没有任何问题。我想知道我的豆子是否做错了什么。
大号