我需要根据队列的相关 ID 从队列中获取特定消息。
有没有一种方法可以让我们获取对应相关 ID 的消息,并仅从队列中删除该消息而不删除其他消息。
我尝试过的选项是检索消息,但在查找我的消息时也会从队列中删除其他消息
浏览队列时,我在 accessQueue 方法中使用了以下 openOptions
MQC.MQOQ_INPUT_SHARED | MQC.MQOO_FAIL_IF_QUIESCING | MQC_MQOO_INQUIRE | MQC.MQOOBROWSE
以及以下选项来获取消息
String correlation ID = <correlationID>
MQMessage respMessage = new MQMessage();
respMessage.correlationId = correlation ID.getBytes();
MQGetMessageOptions msg = new MqGetMessageOptions();
msg.options = MQC.MQGMO_NO_WAIT + MQC.MQGMO_FAIL_IF_QUIESCING + MQC.MQGMO_CONVERT + MQC.MQGMO_BROWSE_NEXT
msg.matchOptions = MQC.MQMO_MATCH_MSG_ID
msg.waitInterval = 2000;
queue.get(respMessage, msg);