3.6.2. Java JMS "Hello World" Program Listing
This program is available, along with other examples, in the
qpid-java-examples
package.
- Java
package org.apache.qpid.example.jmsexample.hello; import javax.jms.*; import javax.naming.Context; import javax.naming.InitialContext; import java.util.Properties; public class Hello { public Hello() { } public static void main(String[] args) { Hello producer = new Hello(); producer.runTest(); } private void runTest() { try { Properties properties = new Properties(); properties.load(this.getClass().getResourceAsStream("hello.properties")); Context context = new InitialContext(properties); ConnectionFactory connectionFactory = (ConnectionFactory) context.lookup("qpidConnectionfactory"); Connection connection = connectionFactory.createConnection(); connection.start(); Session session=connection.createSession(false,Session.AUTO_ACKNOWLEDGE); Destination destination = (Destination) context.lookup("topicExchange"); MessageProducer messageProducer = session.createProducer(destination); MessageConsumer messageConsumer = session.createConsumer(destination); TextMessage message = session.createTextMessage("Hello world!"); messageProducer.send(message); message = (TextMessage)messageConsumer.receive(); System.out.println(message.getText()); connection.close(); context.close(); } catch (Exception exp) { exp.printStackTrace(); } } }
Here is the content of the Hello World example JNDI properties file,
hello.properties
:
java.naming.factory.initial = org.apache.qpid.jndi.PropertiesFileInitialContextFactory # connectionfactory.[jndiname] = [ConnectionURL] connectionfactory.qpidConnectionfactory = amqp://guest:guest@clientid/test?brokerlist='tcp://localhost:5672' # destination.[jndiname] = [address_string] destination.topicExchange = amq.topic