33import javax .annotation .Resource ;
44import javax .ejb .Singleton ;
55import javax .inject .Inject ;
6- import javax .jms .Connection ;
76import javax .jms .ConnectionFactory ;
7+ import javax .jms .JMSContext ;
88import javax .jms .JMSDestinationDefinition ;
9- import javax .jms .JMSException ;
10- import javax .jms .MessageProducer ;
119import javax .jms .Queue ;
12- import javax .jms .Session ;
13- import javax .jms .TextMessage ;
1410
1511@ JMSDestinationDefinition (
1612 name = Mailman .CLASSIC_QUEUE ,
@@ -32,24 +28,8 @@ public class Mailman {
3228
3329 public void sendMessage (String payload )
3430 {
35- Connection connection = null ;
36- try {
37- connection = connectionFactory .createConnection ();
38- connection .start ();
39- Session session = connection .createSession (false , Session .SESSION_TRANSACTED );
40- MessageProducer messageProducer = session .createProducer (demoQueue );
41- TextMessage textMessage = session .createTextMessage (payload );
42- messageProducer .send (textMessage );
43- } catch (JMSException ex ) {
44- ex .printStackTrace ();
45- } finally {
46- if (connection != null ) {
47- try {
48- connection .close ();
49- } catch (JMSException ex ) {
50- ex .printStackTrace ();
51- }
52- }
31+ try (JMSContext context = connectionFactory .createContext ()) {
32+ context .createProducer ().send (demoQueue ,payload );
5333 }
5434 }
5535}
0 commit comments