Package org.jboss.demo.cluster.client

Source Code of org.jboss.demo.cluster.client.JMSClient

package org.jboss.demo.cluster.client;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Properties;

import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.Destination;
import javax.jms.MessageProducer;
import javax.jms.ObjectMessage;
import javax.jms.Session;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

public class JMSClient {
 
  private Context getContext() throws NamingException {

    final Properties env = new Properties();
    env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory");
    env.put(Context.PROVIDER_URL, "remote://10.66.218.47:4447");
    env.put(Context.SECURITY_PRINCIPAL,"democlient");
    env.put(Context.SECURITY_CREDENTIALS,"password1!");

    return new InitialContext(env);
  }
 
  private Context context;

  private void execute() throws Exception {

    context = getContext();
   
    ConnectionFactory connectionFactory = null;
        Connection connection = null;
        Session session = null;
        MessageProducer producer = null;
        Destination destination = null;
       
        try {
      connectionFactory = (ConnectionFactory) context.lookup("jms/RemoteConnectionFactory");
      System.out.println("Acquiring connection factory success, " + connectionFactory);
     
      destination = (Destination) context.lookup("jms/queue/DistributedQueue");
      System.out.println("Acquiring destination success, " + destination);
     
      connection = connectionFactory.createConnection("democlient", "password1!");
      System.out.println("Creating connection success, " + connection);
     
      session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
      System.out.println("Creating session success, " + session);
     
            producer = session.createProducer(destination);
            System.out.println("Creating producer success, " + producer);
           
            connection.start();
           
            HashMap<String, Serializable> map = new HashMap<String, Serializable>();
            map.put( "delay", new Long(1000 * 5) );
            map.put( "message", "JBoss 7/WildFly HornetQ Messaging High Available" );
            System.out.println("Send 10 messages to DistributedQueue");
            for (int index = 1; index <= 10; index++) {
        map.put( "count", index );
        ObjectMessage objectMessage = session.createObjectMessage();
        objectMessage.setObject( map );
        producer.send( objectMessage );
      }
           
            System.out.println("JMSClient exit");
    } catch (Exception e) {
      throw e;
    } finally {

      if (producer != null) {
        producer.close();
      }

      if (session != null) {
        session.close();
      }

      if (connection != null) {
        connection.close();
      }
    }

  }
 
  public static void main(String[] args) throws Exception {
    new JMSClient().execute();
  }

}
TOP

Related Classes of org.jboss.demo.cluster.client.JMSClient

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.