import javax.jms.*; import javax.naming.*; public class FrodoRingQueueReceiver { public static void main(String[] args) { QueueConnectionFactory queueConnectionFactory = null; Queue ringQueue = null; try { Context jndiContext = new InitialContext(); queueConnectionFactory = (QueueConnectionFactory) jndiContext.lookup("QueueConnectionFactory"); ringQueue = (Queue) jndiContext.lookup("RingQueue"); } catch (NamingException nameEx) { System.out.println("Naming Exception: " + nameEx.toString()); } QueueConnection queueConnection = null; try { queueConnection = queueConnectionFactory.createQueueConnection(); QueueSession queueSession = queueConnection.createQueueSession( false, Session.AUTO_ACKNOWLEDGE); QueueReceiver queueReceiver = queueSession.createReceiver(ringQueue); queueConnection.start(); TextMessage textMessage = null; while (true) { textMessage = (TextMessage) queueReceiver.receive(1); System.out.println(" receiving line " + " : " + textMessage.getText()); if (textMessage.getText().equals("end of message")) { break; } } queueConnection.close(); System.out.println(" ring receiver closed"); } catch (javax.jms.JMSException jmsEx) { System.out.println("JMS Exception: " + jmsEx.toString()); } finally { if (queueConnection != null) { try { queueConnection.close(); } catch (javax.jms.JMSException jmse) {} } } } }