Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.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 一次又一次地接收相同消息的JMS侦听器_Java_Jms_Activemq_Listener - Fatal编程技术网

Java 一次又一次地接收相同消息的JMS侦听器

Java 一次又一次地接收相同消息的JMS侦听器,java,jms,activemq,listener,Java,Jms,Activemq,Listener,有一个进程在队列上搜索消息,我的服务器有一个JMS侦听器,它通过onMessage方法接收消息 @JmsListener(destination = "MYQUEUE", containerFactory = "jmsListenerFactory") public void onMessage(javax.jms.Message msg) { ActiveMQTextMessage m=null; if(msg instanceof ActiveMQTex

有一个进程在队列上搜索消息,我的服务器有一个JMS侦听器,它通过onMessage方法接收消息

@JmsListener(destination = "MYQUEUE", containerFactory = "jmsListenerFactory")  
public void onMessage(javax.jms.Message msg) {
        ActiveMQTextMessage m=null;

        if(msg instanceof ActiveMQTextMessage){
            m = (ActiveMQTextMessage) msg;

        }
           try {
            m.acknowledge();
        } catch (JMSException e5) {
            // TODO Auto-generated catch block
            e5.printStackTrace();
        }
}

我有一家咖啡豆工厂

这个过程是两条消息,我的服务器在第一时间就能很好地读取它们。。然后它给出空指针并不断重复他收到的(2条消息中的1条)

有什么想法吗


非常感谢

您的问题陈述对于正在发生的事情不够清楚,您需要提供更多信息基本上我应该阅读我的流程排队的2条消息。。我的服务器正在读取它们,但它一直在多次读取最后一条,我的服务器抛出了7次NullPointer异常,最后一条消息再次出现。。。我想这是因为我承认。。我认为这种确认在spring上不起作用..堆栈跟踪?错误日志?任何可能帮助某人了解发生了什么的事情?如何创建JMS会话,理想的做法是像
session session=connection.createSession(false,session.AUTO_-ACKNOWLEDGE)这样做如果您这样做,那么我们不需要确认为会话的文档。AUTO_acknowledge表示,使用此确认模式,当会话成功地从要接收的调用返回时,或者当会话为处理消息而调用的消息侦听器成功返回时,会话自动确认客户端接收到消息。请检查此链接,了解ActiveMQ中消息的重新传递您的问题陈述不清楚是什么如果发生这种情况,您需要提供更多信息。基本上,我应该阅读我的进程排队的2条消息。。我的服务器正在读取它们,但它一直在多次读取最后一条,我的服务器抛出了7次NullPointer异常,最后一条消息再次出现。。。我想这是因为我承认。。我认为这种确认在spring上不起作用..堆栈跟踪?错误日志?任何可能帮助某人了解发生了什么的事情?如何创建JMS会话,理想的做法是像
session session=connection.createSession(false,session.AUTO_-ACKNOWLEDGE)这样做如果您这样做,那么我们不需要确认为会话的文档。AUTO_acknowledge表示,使用此确认模式,当会话成功地从要接收的调用返回时,或当会话调用以处理消息的消息侦听器成功返回时,会话自动确认客户端接收到消息。请检查此链接,了解ActiveMQ中消息的重新传递