<dependency>
<groupId>javax.jms</groupId>
<artifactId>javax.jms-api</artifactId>
<version>2.0.1</version>
</dependency>
<resource-ref>
<description>JMS Connection Factory</description>
<res-ref-name>jms/ConnectionFactory</res-ref-name>
<res-type>javax.jms.ConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
<description>JMS Destination</description>
<res-ref-name>jms/Destination</res-ref-name>
<res-type>javax.jms.Queue</res-type>
<res-auth>Container</res-auth>
</resource-ref>
@Resource(lookup = "jms/ConnectionFactory")
private ConnectionFactory connectionFactory;
@Resource(lookup = "jms/Destination")
private Queue destination;
public void sendMessage(String message) {
try (JMSContext context = connectionFactory.createContext()) {
JMSProducer producer = context.createProducer();
producer.send(destination, message);
}
}
@JMSListener(destination = "jms/Destination")
public void receiveMessage(String message) {
System.out.println("Received message: " + message);
}