У вас есть сообщение в Websphere MQ. Прочитали сообщение, и я пытаюсь отменить сообщение в Input Queue. Порог повтора еще не достигнут. Сообщение MQ автоматически помещается в вход Q при возникновении исключения? Это мой код:Сообщение Websphere MQ doesnot backout to Input Queue
MQQueueManager qm = new MQQueueManager("");
MQQueue q = qm.accessQueue("");
MQMessage message = new MQMessage();
q.get(message);
System.out.println("Retry Count"+ message.backoutCount);
throw new NullPointerException;
Будет ли приведенный выше код снова помещать сообщение в очередь ввода? В этом случае он не возвращает сообщение в очередь ввода. Сообщение потеряно.
Да .. Теперь он работает. Но я хочу, чтобы выяснилось одно. Если возникает исключение при обработке msg, будет ли msg возвращаться в Input Q для повторной обработки для количества предварительно заданных сообщений, настроенное время? Если он достиг порога, то сообщения переместились в очередь резервного копирования? В моем случае происходит то же самое. Но как только я закрою приложение, все сообщения будут возвращены в очередь ввода из очереди резервного копирования. Это случается для повторного подсчета количества повторных попыток. Поставьте здесь путаницу .. Справка по Pls – Karthik
Если у вас есть порог очереди резервного копирования и резервного копирования, определенный на вашем входе q, тогда некоторые интерфейсы (а не базовый MQI) позволят только конкретному сообщение, которое должно быть отменено так много раз, прежде чем переместить его в очередь резервного копирования. Ваше описание звучит так, будто вы никогда не совершали транзакцию? Можете ли вы убрать свой вопрос (или поднять новый) с помощью своего кода, используя точки синхронизации? –