1 package xpetstore.util; 2 3 import java.io.Serializable ; 4 5 import javax.jms.JMSException ; 6 import javax.jms.ObjectMessage ; 7 import javax.jms.Queue ; 8 import javax.jms.QueueConnection ; 9 import javax.jms.QueueConnectionFactory ; 10 import javax.jms.QueueSender ; 11 import javax.jms.QueueSession ; 12 13 import javax.naming.InitialContext ; 14 import javax.naming.NamingException ; 15 16 17 20 public class JMSUtil 21 { 22 24 public static void sendToJMSQueue( String queueName, 25 Serializable obj, 26 boolean transacted ) 27 throws NamingException , 28 JMSException 29 { 30 Debug.print( "sendToJMSQueue(" + queueName + "," + obj + "," + transacted + ")" ); 31 32 InitialContext ic = null; 33 QueueConnection cnn = null; 34 QueueSender sender = null; 35 QueueSession session = null; 36 37 try 38 { 39 ic = new InitialContext ( ); 40 41 Queue queue = ( Queue ) ic.lookup( queueName ); 42 43 QueueConnectionFactory factory = ( QueueConnectionFactory ) ic.lookup( JNDINames.QUEUE_CONNECTION_FACTORY ); 44 cnn = factory.createQueueConnection( ); 45 session = cnn.createQueueSession( transacted, QueueSession.AUTO_ACKNOWLEDGE ); 46 47 ObjectMessage msg = session.createObjectMessage( obj ); 48 49 sender = session.createSender( queue ); 50 sender.send( msg ); 51 } 52 finally 53 { 54 if ( sender != null ) 55 { 56 sender.close( ); 57 } 58 59 if ( session != null ) 60 { 61 session.close( ); 62 } 63 64 if ( cnn != null ) 65 { 66 cnn.close( ); 67 } 68 69 if ( ic != null ) 70 { 71 ic.close( ); 72 } 73 } 74 } 75 } 76 | Popular Tags |