QueueFiller.java
上传用户:dinglihq
上传日期:2013-02-04
资源大小:99958k
文件大小:2k
源码类别:

Java编程

开发平台:

Java

  1. package bible.webservices.message.producer;
  2. import javax.naming.*;
  3. import javax.jms.*;
  4. import java.util.*;
  5. /**
  6.  * Class QueueFiller
  7.  *
  8.  *
  9.  * @author
  10.  * @version %I%, %G%
  11.  */
  12. public class QueueFiller {
  13.   /**
  14.    * Constructor QueueFiller
  15.    *
  16.    *
  17.    */
  18.   public QueueFiller() {}
  19.   /**
  20.    * Method main
  21.    *
  22.    *
  23.    * @param args
  24.    *
  25.    */
  26.   public static void main(String[] args) {
  27.     Context                ctx                = null;
  28.     QueueConnectionFactory qConnectionFactory = null;
  29.     QueueConnection        qConnection        = null;
  30.     QueueSession           qSession           = null;
  31.     QueueSender            qSender            = null;
  32.     try {
  33.       Properties props = new Properties();
  34.       props.put(Context.INITIAL_CONTEXT_FACTORY,
  35.                 "weblogic.jndi.WLInitialContextFactory");
  36.       props.put(Context.PROVIDER_URL, "t3://localhost:7001");
  37.       ctx                = new InitialContext(props);
  38.       qConnectionFactory =
  39.         (QueueConnectionFactory) ctx
  40.           .lookup("bible/ws/message/ReceiveConnectionFactory");
  41.       qConnection        = qConnectionFactory.createQueueConnection();
  42.       qSession           = qConnection.createQueueSession(false,
  43.         javax.jms.QueueSession.AUTO_ACKNOWLEDGE);
  44.       Queue q = (Queue) ctx.lookup("ReceiveQueue");
  45.       qSender = qSession.createSender(q);
  46.       System.out.println("Sending messages to the client...");
  47.       ObjectMessage message = qSession.createObjectMessage();
  48.       for (int i = 0; i < 10; i++) {
  49.         message.clearBody();
  50.         message.setObject("Message #" + i + " data to the client");
  51.         System.out.println("Sending message #" + i);
  52.         qSender.send(message);
  53.       }
  54.       message.clearBody();
  55.       message.setObject("Stop");
  56.       System.out.println("Sending message " + message.getObject());
  57.       qSender.send(message);
  58.     } catch (Exception e) {
  59.       e.printStackTrace();
  60.     } finally {
  61.       try {
  62.         qSender.close();
  63.         qSession.close();
  64.         qConnection.close();
  65.       } catch (Exception ex) {}
  66.     }
  67.   }
  68. }
  69. /*--- Formatted in Bible Style on Thu, Sep 6, '01 ---*/
  70. /*------ Formatted by Jindent 3.24 Gold 1.02 --- http://www.jindent.de ------*/