ConnectionFactory factory = new ActiveMQConnectionFactory(url);
Connection connection = factory.createConnection();
Session session = connection.createSession(true, Session.SESSION_TRANSACTED);
Destination destination = session.createQueue("myQueue");
MessageProducer producer = session.createProducer(destination);
MessageConsumer consumer = session.createConsumer(destination);
try {
session.beginTransaction();
Message message = session.createTextMessage("Hello, JMS!");
producer.send(message);
Message receivedMessage = consumer.receive();
session.commit();
} catch (Exception ex) {
session.rollback();
} finally {
session.close();
connection.close();
}
UserTransaction transaction = (UserTransaction) new InitialContext().lookup("java:comp/UserTransaction");
transaction.begin();
try {
ConnectionFactory factory = new ActiveMQConnectionFactory(url);
Connection connection = factory.createConnection();
Session session = connection.createSession(true, Session.SESSION_TRANSACTED);
Destination destination = session.createQueue("myQueue");
MessageProducer producer = session.createProducer(destination);
MessageConsumer consumer = session.createConsumer(destination);
Message message = session.createTextMessage("Hello, JMS!");
producer.send(message);
Message receivedMessage = consumer.receive();
session.close();
connection.close();
transaction.commit();
} catch (Exception ex) {
transaction.rollback();
}