Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
- package dst2.client;
- import java.util.Properties;
- import javax.jms.Message;
- import javax.jms.MessageListener;
- import javax.jms.ObjectMessage;
- import javax.jms.Session;
- import javax.jms.TextMessage;
- import javax.jms.Topic;
- import javax.jms.TopicConnection;
- import javax.jms.TopicConnectionFactory;
- import javax.jms.TopicSession;
- import javax.jms.TopicSubscriber;
- import javax.naming.Context;
- import javax.naming.InitialContext;
- /**
- *
- * @author Aion
- */
- public class ShutDownListener{
- public ShutDownListener() {
- try {
- // JNDI Environment bauen um ConnectionFactory Klasse des JMS zu finden..
- Context context = new InitialContext();
- //TopicConnectionFactory holen
- System.out.println("1");
- TopicConnectionFactory factory = (TopicConnectionFactory) context.lookup("dst.Factory");
- System.out.println("2");
- // Connection erstellen, verbinden und Session erzeugen
- TopicConnection connection = factory.createTopicConnection();
- System.out.println("3");
- //connection.setClientID("SystemA"); //Für ActiveMQ notwendig
- connection.start();
- System.out.println("4");
- TopicSession session = connection.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
- System.out.println("5");
- //Topic holen und anmelden
- Topic topic = (Topic) context.lookup("ShutDown");
- System.out.println("6");
- // TopicSubscriber subscriber = session.createDurableSubscriber(topic, "SystemA");
- TopicSubscriber subscriber = session.createSubscriber(topic);
- System.out.println("7");
- subscriber.setMessageListener(new MessageHandler());
- System.out.println("8");
- System.out.println("Warte auf messages... ");
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- class MessageHandler implements MessageListener {
- public void onMessage(Message message) {
- try {
- if (message instanceof TextMessage) {
- TextMessage msg = (TextMessage) message;
- System.out.println("Lese TextMessage: " + msg.getText());
- }
- else if(message instanceof ObjectMessage) {
- ObjectMessage msg = (ObjectMessage) message;
- System.out.println("Lese ObjectMessage:");
- Object payload = msg.getObject();
- }
- else {
- System.out.println("Unknown Message Type");
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement