ActiveMQ: установить приоритет для сообщения не работает - PullRequest
0 голосов
/ 13 октября 2011

У меня проблемы с установкой приоритетов сообщений через nms.Сообщения отправляются в очередь, все в порядке, но приоритет игнорируется.

Я использую следующий код:

message.NMSPriority = MsgPriority.High;

Независимо от того, какое значение я установил для приоритета сообщения, используя браузер ActiveMQЯ вижу, что приоритет всегда установлен на 4.

Я также пытался добавить некоторые необработанные заголовки, такие как:

message.Properties["priority"] = 2;
message.Properties["PRIORITY"] = 5;
message.Properties["NMSPriority"] = 7;
message.Properties["JMSPriority "] = 9;

Но это не помогает.

Я также добавил атрибут

prioritizedMessages="true"

в файл activemq.xml.И я могу отправить сообщение с приоритетом вручную через браузер ActiveMQ.

Так в чем же проблема?Что я делаю не так?

1 Ответ

2 голосов
/ 13 октября 2011

Приоритет сообщения всегда устанавливается производителем, который отправляет сообщение. Установщик класса позволит вам изменять значение только после того, как вы получили сообщение, и обычно используется только для модульного тестирования или преобразования сообщений между провайдерами. Чтобы установить приоритет сообщения для каждого сообщения, взгляните на различные методы отправки в интерфейсе MessageProducer.

...