Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 消息驱动Bean不接收消息_Java_Glassfish_Jms_Java Ee 6_Message Driven Bean - Fatal编程技术网

Java 消息驱动Bean不接收消息

Java 消息驱动Bean不接收消息,java,glassfish,jms,java-ee-6,message-driven-bean,Java,Glassfish,Jms,Java Ee 6,Message Driven Bean,我正在尝试实现一个服务,它侦听一个主题以接收发送到该主题的消息。代码非常简单: @MessageDriven(mappedName="jms/TEST", activationConfig={ @ActivationConfigProperty(propertyName="destinationType",propertyValue="javax.jms.Topic"), @ActivationConfigProperty(propertyName="subscriptionNa

我正在尝试实现一个服务,它侦听一个主题以接收发送到该主题的消息。代码非常简单:

@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,向主题测试发送消息。然而,我的听众根本没有收到任何消息。我创建了另一个听同一主题的服务,而不使用消息驱动Bean,并且能够接收,即发送消息时没有任何问题。我不知道我的豆子有没有做错什么


L

尝试使用查看glassfish JMS中的实际情况。由于客户端编码或配置错误,消息从未到达,或者侦听器未正确分配到队列。测试客户端时,您应该能够关闭侦听器并看到消息到达。如果这样做行得通,那么问题就在于监听者。我相信这是监听者的问题,因为客户的工作正常。我不知道这是否重要,但我想使用消息主题而不是消息队列,以便消息可以广播给不同的侦听器。