1 7 package jfox.test.ejb3.mdb; 8 9 import javax.annotation.Resource; 10 import javax.ejb.EJBException ; 11 import javax.ejb.Remote ; 12 import javax.ejb.Stateless ; 13 import javax.jms.Message ; 14 import javax.jms.QueueConnection ; 15 import javax.jms.QueueConnectionFactory ; 16 import javax.jms.QueueSender ; 17 import javax.jms.QueueSession ; 18 import javax.jms.Session ; 19 import javax.jms.TopicConnection ; 20 import javax.jms.TopicConnectionFactory ; 21 import javax.jms.TopicPublisher ; 22 import javax.jms.TopicSession ; 23 24 import org.jfox.ejb3.naming.JNDIContextHelper; 25 26 29 @Stateless 30 @Remote 31 public class MessageSenderBean implements MessageSender { 32 33 @Resource 34 QueueConnectionFactory queueConnectionFactory; 35 36 public void sendQueueMessage(Message message) { 37 try { 38 QueueConnection qc = queueConnectionFactory.createQueueConnection(); 40 QueueSession qs = qc.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); 41 QueueSender sender = qs.createSender(qs.createQueue("testQ")); 42 sender.send(qs.createTextMessage("Hello, Queue MDB!")); 43 } 44 catch (Exception e) { 45 throw new EJBException (e); 46 } 47 } 48 49 public void sendTopicMessage(Message message) { 50 try { 51 TopicConnectionFactory tcf = (TopicConnectionFactory )JNDIContextHelper.lookup("defaultcf"); 53 TopicConnection tc = tcf.createTopicConnection(); 54 TopicSession ts = tc.createTopicSession(false, Session.AUTO_ACKNOWLEDGE); 55 TopicPublisher tp = ts.createPublisher(ts.createTopic("testT")); 56 tp.send(ts.createTextMessage("Hello, Topic MDB!")); 57 } 58 catch (Exception e) { 59 throw new EJBException (e); 60 } 61 } 62 63 } 64 | Popular Tags |