Я пытаюсь удалить запланированное задержанное сообщение через Мысли о Тиме Бише
Сообщение запланировано правильно, но невозможно удалить запланированное сообщение.
Я использую ActiveMq-5.15.3
Также включено schedulerSupport = "true" из activemq.xml
Вот мой код
/**
* #1 Send 5 message with delayed time 60sec's
*/
//send delayed message
Destination destination = session.createQueue("test");
producer = session.createProducer(destination);
Message message = session.createTextMessage(getCustomerMessage());
long delay = 1 * 1000*60;
message.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY, delay);
for(int i=0; i<5; i++{
producer.send(message);
}
//end
После запуска выше кода, веб-консоль покажет результат, как показано на снимке экрана ниже.
Запланированная вкладка:
Через одну минуту все сообщения перемещаются в очереди (как обычные сообщения), это нормально.
Но я хочу отменить все запланированные сообщения и не нужно ставить очереди.
Я запускаю ниже программу для удаления всех запланированных сообщений. (до 1 минуты)
//remove all schedule
Destination destination = session.createQueue("test");
MessageProducer mproducer = session.createProducer(destination);
Message request = session.createMessage();
request.setStringProperty(ScheduledMessage.AMQ_SCHEDULER_ACTION,
ScheduledMessage.AMQ_SCHEDULER_ACTION_REMOVEALL);
mproducer.send(request);
//end
Над кодом Не удаляется из запланированного сообщения. Просто поставьте в очередь как обычное сообщение.
Пробовал также
createTopic (ScheduledMessage.AMQ_SCHEDULER_MANAGEMENT_DESTINATION)
вместо createQueue («тест»)
удалить через свойство просмотра также не работает
browser.receive(5000);
browser.receive всегда возвращает null
Пожалуйста, поправьте меня, что я делаю не так?
Спасибо