Как внедрить селектор сообщений в bean слушателя сообщения при интеграции с jms-spring?

я работаю с JMS API (с HornetQ) и яиспользуя пружинные бины для контейнера слушателя сообщений и слушателя сообщения:


    



    
    



Что мне делать, если я хочу, чтобы мой прослушиватель сообщений потреблял только определенные сообщения (с одинаковым StringProperty)? Где я должен определить селектор?

У меня есть решение ниже, но я неу меня нет MessageConsumer, и поэтому я могудобавить селектор к нему:

     String redSelector = "color='red'";

     MessageConsumer redConsumer = session.createConsumer(queue, redSelector);
     redConsumer.setMessageListener(new SimpleMessageListener("red"));

     TextMessage redMessage = session.createTextMessage("Red");
     redMessage.setStringProperty("color", "red");

     producer.send(redMessage);

Ответы на вопрос(1)

Решение Вопроса

MessageListenerContainer сюда:

p:messageSelector="color='red'"

 Jaqen H'ghar10 окт. 2012 г., 16:22
Спасибо! Может ли MessageListenerContainer иметь более одного пункта назначения? или более одного messageListener?
 Biju Kunjummen10 окт. 2012 г., 16:36
Для более чем 1 места назначения вы, вероятно, можете просто зарегистрировать больше messagelistenercontainers - в отношении более чем одного MessageListener на контейнер - вы можете по существу отправлять его внутри MessageListener - получить сообщение внутри MessageListener и делегировать сообщение большему количеству компонентов внутри MessageListener.

Ваш ответ на вопрос