Here is a simple Java EE session bean which demonstrates how to use the JMS 1.1 API to send a message.
@Stateless @LocalBean public class JavaEESenderOld { @Resource(lookup = "java:global/jms/demoConnectionFactory") ConnectionFactory connectionFactory; @Resource(lookup = "java:global/jms/demoQueue") Queue demoQueue; public void sendMessageOld(String payload) { try { Connection connection = connectionFactory.createConnection(); try { Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE); MessageProducer messageProducer = session.createProducer(demoQueue); TextMessage textMessage = session.createTextMessage(payload); messageProducer.send(textMessage); } finally { connection.close(); } } catch (JMSException ex) { Logger.getLogger(getClass().getName()).log(Level.SEVERE, null, ex); } } }
This example shows:
This example is for Java EE but the API for Java SE is similar
Now compare this with using the JMS 2.0 simplified API to do the same thing