我遇到了使用消息使用者(javax.jms.MessageConsumer
)从队列中读取消息的情况。 使用的会话使用AUTO_ACKNOWLEDGE模式。使用消息使用者时的JMS自动确认
从我至今在AUTO_ACK模式阅读:
在如果消费者的onMessage()方法完成,没有错误的消息被认为是接收并成功处理的自动确认,它会被去掉,然后来自JMS服务器。
我的问题是被认为由JMS生产者考虑我真的不使用具有一个onMessage()方法一个MDB而是通过使用前面所述的消息用户读取消息是ACK消息时。
当我使用messageConsumer成功读取消息后,消息是否已确认? 如果进一步向下逻辑链,使用相应消息的方法会引发错误,会发生什么?那个时候消息已经被确认了吗?
是的,我打电话receiveNoWait。 – Sergiu