Micro Container Example

This examples shows how to setup and run HornetQ through the Micro Container.

Refer to the user's manual for the list of required Jars, since JBoss Micro Container requires a few jars.

Example step-by-step

To run the example, simply type mvn verify from this directory

In this we don't use any configuration files. (Everything is embedded). We simply instantiate ConfigurationImpl, HornetQServer, start it and operate on JMS regularly

  1. Start the server
  2.            hornetq = new HornetQBootstrapServer("./server0/hornetq-beans.xml");
               hornetq.run();
            
  3. As we are not using a JNDI environment we instantiate the objects directly
  4.            ServerLocator serverLocator = HornetQClient.createServerLocatorWithoutHA(new TransportConfiguration(NettyConnectorFactory.class.getName()));
               ClientSessionFactory sf = serverLocator.createSessionFactory();
            
  5. Create a Core Queue
  6.            ClientSession coreSession = sf.createSession(false, false, false);
               final String queueName = "queue.exampleQueue";
               coreSession.createQueue(queueName, queueName, true);
               coreSession.close();
            
  7. Create the session and producer
  8.            session = sf.createSession();
                                       
               ClientProducer producer = session.createProducer(queueName);
            
  9. Create and send a Message
  10.            ClientMessage message = session.createMessage(false);
               message.putStringProperty(propName, "Hello sent at " + new Date());
               System.out.println("Sending the message.");
               producer.send(message);
            
  11. Create the message consumer and start the connection
  12.            ClientConsumer messageConsumer = session.createConsumer(queueName);
               session.start();
            
  13. Receive the message
  14.            ClientMessage messageReceived = messageConsumer.receive(1000);
               System.out.println("Received TextMessage:" + messageReceived.getProperty(propName));
             
  15. Be sure to close our resources!
  16.            if (sf != null)
               {
                  sf.close();
               }
            
  17. Stop the server
  18.            hornetq.shutdown();