vendredi 24 avril 2015

Spring JMS Listener

Hallo Leute.

Ich arbeite mich gerade in JMS mit Spring und ActiveMQ ein und habe ein paar Fragen:

Ich möchte eine Springapplikation programmieren die im ersten Schritt ein JMS Listener ist. Am ende möchte ich auf 2 Queues hören, jetzt reicht daweil eine.

Ich habe nun eine eigene JMS Config für Spring angelegt:

Code:

    <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"
        p:brokerURL="http://vmlocalhost:61616" />


    <bean id="simpleMessageListener" class="com.example.MessageListenerImpl" />


    <jms:listener-container container-type="default"
        connection-factory="connectionFactory" acknowledge="auto">
        <jms:listener destination="foo.bar" ref="simpleMessageListener"
            method="onMessage" />
    </jms:listener-container>

Der Java Code zu der Klasse MessageListenerImpl:
Java Code:

  1.  
  2. public class MessageListenerImpl implements MessageListener {
  3.  
  4.  
  5. /** Logger initialization. **/
  6. private static final Logger LOGGER = LoggerFactory.getLogger(MessageListenerImpl.class);
  7.  
  8.  
  9. @Override
  10. public void onMessage(Message message) {
  11. try {
  12. TextMessage msg = (TextMessage) message;
  13. LOGGER.info("Empfangene Nachricht: {}", msg.getText());
  14. } catch(JMSException e) {
  15. LOGGER.error("JMS Exception", e);
  16. }
  17. }
  18.  
  19.  
  20. }


So weit so gut. Nun möchte ich das ganze mit einem jUnit Test testen und habe da vorgeschlagen bekommen ActiveMQ embeddet dazu zu verwenden. Also das ich aus ActiveMQ mir die Nachricht schicke. Leider stehe ich jetzt komplett auf der Leiter. Das ist das erste mal das ich mit JMS und ActiveMQ arbeite. Möchte mich darin fortbilden weil ich es bald brauchen werde.

LG und vielen Dank im voraus.


Spring JMS Listener

0 commentaires:

Enregistrer un commentaire