Advertisement
Guest User

Untitled

a guest
May 23rd, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.57 KB | None | 0 0
  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5.  
  6. package dst2.client;
  7.  
  8. import java.util.Properties;
  9. import javax.jms.Message;
  10. import javax.jms.MessageListener;
  11. import javax.jms.ObjectMessage;
  12. import javax.jms.Session;
  13. import javax.jms.TextMessage;
  14. import javax.jms.Topic;
  15. import javax.jms.TopicConnection;
  16. import javax.jms.TopicConnectionFactory;
  17. import javax.jms.TopicSession;
  18. import javax.jms.TopicSubscriber;
  19. import javax.naming.Context;
  20. import javax.naming.InitialContext;
  21.  
  22. /**
  23.  *
  24.  * @author Aion
  25.  */
  26.  
  27.  
  28. public class ShutDownListener{
  29.  
  30.   public ShutDownListener() {
  31.     try {
  32.       // JNDI Environment bauen um ConnectionFactory Klasse des JMS zu finden..
  33.       Context context = new InitialContext();
  34.  
  35.       //TopicConnectionFactory holen
  36.       System.out.println("1");
  37.       TopicConnectionFactory factory = (TopicConnectionFactory) context.lookup("dst.Factory");
  38.  
  39.       System.out.println("2");
  40.       // Connection erstellen, verbinden und Session erzeugen
  41.       TopicConnection connection = factory.createTopicConnection();
  42.       System.out.println("3");
  43.       //connection.setClientID("SystemA");          //Für ActiveMQ notwendig
  44.       connection.start();
  45.       System.out.println("4");
  46.       TopicSession session = connection.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
  47.       System.out.println("5");
  48.  
  49.  
  50.       //Topic holen und anmelden
  51.       Topic topic = (Topic) context.lookup("ShutDown");
  52.       System.out.println("6");
  53.     //  TopicSubscriber subscriber = session.createDurableSubscriber(topic, "SystemA");
  54.       TopicSubscriber subscriber = session.createSubscriber(topic);
  55.       System.out.println("7");
  56.       subscriber.setMessageListener(new MessageHandler());
  57.       System.out.println("8");
  58.  
  59.       System.out.println("Warte auf messages... ");
  60.  
  61.     } catch (Exception e) {
  62.       e.printStackTrace();
  63.     }
  64.   }
  65.  
  66.   class MessageHandler implements MessageListener {
  67.     public void onMessage(Message message) {
  68.       try {
  69.         if (message instanceof TextMessage) {
  70.           TextMessage msg = (TextMessage) message;
  71.           System.out.println("Lese TextMessage: " + msg.getText());
  72.         }
  73.         else if(message instanceof ObjectMessage) {
  74.           ObjectMessage msg = (ObjectMessage) message;
  75.           System.out.println("Lese ObjectMessage:");
  76.  
  77.           Object payload = msg.getObject();
  78.         }
  79.         else {
  80.           System.out.println("Unknown Message Type");
  81.         }
  82.       } catch (Exception e) {
  83.         e.printStackTrace();
  84.       }
  85.     }
  86.   }
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement