Невозможно получить существующее сообщение JMS из DLQ на Payara 5.2022.5.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Невозможно получить существующее сообщение JMS из DLQ на Payara 5.2022.5.

Сообщение Anonymous »

Я пытаюсь повторно обработать сообщения из очереди недоставленных писем/сообщений (DLQ).
В приведенном ниже методе я получаю значение null, когда выполняю dlqConsumer.receive(5000) на Пайаре 5.2022.5. Там, где я использовал QueueBrowser, сообщения отображаются нормально. Что не выполняет цикл while?
public void resubmitMessages(int toResubmit) throws Exception {
log.debug("DLQService: resubmitMessages()");
InitialContext ctx = null;
QueueConnectionFactory connectionFactory;
QueueConnection queueConn = null;

try {
ctx = new InitialContext();
connectionFactory = (QueueConnectionFactory) ctx.lookup("jms/ConnectionFactory");
queueConn = connectionFactory.createQueueConnection();
QueueSession queueSession = queueConn.createQueueSession(true, QueueSession.AUTO_ACKNOWLEDGE);
assert queueSession.getTransacted();

Queue clsQueue = (Queue) ctx.lookup(CLS_NAME);
QueueSender sender = queueSession.createSender(clsQueue);

Queue dlq = (Queue) ctx.lookup("queue/mq.sys.dmq");
MessageConsumer dlqConsumer = queueSession.createConsumer(dlq);

int i = 0;
Message message;
while ((message = dlqConsumer.receive(5000)) != null && i < toResubmit) {
try {
log.debug("Processing: " + ((ObjectMessage) message).getObject());
sender.send(message);
queueSession.commit();
log.debug("resubmitted successfully to main queue from dlq");
} catch (JMSException jmse) {
log.error("Exception caught while resubmitting message to main queue", jmse);
queueSession.rollback();
throw jmse;
}
i++;
}
} catch (Exception e) {
log.error("Exception caught while sending message", e);
throw e;
} finally {
cleanUp(ctx, queueConn);
}
}


Подробнее здесь: https://stackoverflow.com/questions/791 ... a-5-2022-5
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»