package jmsclient; import java.util.Properties; import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.JMSException; import javax.jms.MessageConsumer; import javax.jms.MessageProducer; import javax.jms.Queue; import javax.jms.Session; import javax.jms.TextMessage; import javax.naming.InitialContext; /** * * @author mnovak */ public class Consumer { /** * @param args the command line arguments */ public static void main(String[] args) throws Exception { String destinationName = "/queue/testDistributedQueue"; InitialContext ic = null; ConnectionFactory cf = null; Connection connection = null; try { Properties properties = new Properties(); properties.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory"); // properties.setProperty("java.naming.provider.url", "jnp://jawa01.englab.brq.redhat.com:1100, jnp://jawa02.englab.brq.redhat.com:1100"); properties.setProperty("java.naming.provider.url", "jnp://localhost:1099"); properties.setProperty("java.naming.factory.url.pkgs", "org.jnp.interfaces.NamingContextFactory"); ic = new InitialContext(properties); cf = (ConnectionFactory)ic.lookup("/ConnectionFactory"); Queue queue = (Queue)ic.lookup(destinationName); System.out.println("Queue " + destinationName + " exists"); connection = cf.createConnection(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); // MessageProducer sender = session.createProducer(queue); // TextMessage message = session.createTextMessage("Hello!"); // sender.send(message); // System.out.println("The message was successfully sent to the " + queue.getQueueName() + " queue"); MessageConsumer consumer = session.createConsumer(queue); connection.start(); TextMessage message = null; int counter = 0; while ((message = (TextMessage)consumer.receive(2000)) != null) { System.out.println(counter + ". got message id = " + message.getJMSMessageID() + " inMessageId=" + message.getText()); counter++; } } catch (Exception ex ) { ex.printStackTrace(); } finally { if(ic != null) { try { ic.close(); } catch(Exception e) { throw e; } } try { if (connection != null) { connection.close(); } } catch(JMSException jmse) { System.err.println("Could not close connection " + connection +" exception was "); jmse.printStackTrace(); } } } }