BibleTopicPublisher.java
资源名称:某公司的java培训教材 [点击查看]
上传用户:dinglihq
上传日期:2013-02-04
资源大小:99958k
文件大小:3k
源码类别:
Java编程
开发平台:
Java
- package bible.jms;
- import javax.jms.*;
- import javax.naming.*;
- import java.util.*;
- /**
- * Class BibleTopicPublisher
- *
- *
- * @author
- * @version %I%, %G%
- */
- public class BibleTopicPublisher {
- /**
- * Method main
- *
- *
- * @param args
- *
- */
- public static void main(String[] args) {
- Context ctx = null;
- Hashtable ht = new Hashtable();
- TopicConnectionFactory tConnectionFactory = null;
- TopicConnection tConnection = null;
- TopicSession tSession = null;
- TopicPublisher tPublisher = null;
- Topic t = null;
- TextMessage textMsg = null;
- String msg;
- try {
- // Obtain references to JMS Topic components.
- ht.put(Context.INITIAL_CONTEXT_FACTORY,
- "weblogic.jndi.WLInitialContextFactory");
- ht.put(Context.PROVIDER_URL, "t3://localhost:7001");
- ctx = new InitialContext(ht);
- tConnectionFactory =
- (TopicConnectionFactory) ctx.lookup("BibleJMSFactory");
- tConnection = tConnectionFactory.createTopicConnection();
- tSession = tConnection.createTopicSession(false,
- javax.jms.TopicSession.AUTO_ACKNOWLEDGE);
- t = (Topic) ctx.lookup("BibleJMSTopic");
- tPublisher = tSession.createPublisher(t);
- System.out.println("Publishing messages...");
- textMsg = tSession.createTextMessage();
- for (int i = 1; i <= 10; i++) {
- msg = "Message #" + i;
- textMsg.clearBody();
- textMsg.setIntProperty("severity", i);
- textMsg.setText(msg);
- System.out.println(" Publishing message: " + msg);
- tPublisher.publish(textMsg);
- }
- msg = "Stop";
- textMsg.clearBody();
- textMsg.setText(msg);
- textMsg.setIntProperty("severity", 0);
- System.out.println(" Sending message: " + msg);
- tPublisher.publish(textMsg);
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- // Release JMS resources.
- tPublisher.close();
- tSession.close();
- tConnection.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- }
- /*--- Formatted in Bible Style on Thu, Sep 6, '01 ---*/
- /*------ Formatted by Jindent 3.24 Gold 1.02 --- http://www.jindent.de ------*/