⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unifyconsumer.java

📁 BEA WebLogic Server 8.1大全 = BEA webLogic server 8.1 unleashed (美) Mark Artiges等著 袁毅 ... [等] 译 eng
💻 JAVA
字号:
package com.wls8unleashed.jms;

import javax.jms.*;
import javax.naming.*;

/** 
 * Implements a basic consumer from a JMS destination.
 * Extends the UnifyManager for some basic initialization
 * help.
 */
public class UnifyConsumer extends UnifyManager 
	implements MessageListener {
		
	private MessageConsumer messageConsumer;
	public boolean quitFromReceiving = false;

	/**
	 * Constructor creates all of the objects to receive messages
	 */
	public UnifyConsumer(Context context)
		throws NamingException, JMSException {
			super(context);
			
		// Create Receiver
		System.out.println("Creating generic JMS consumer...");
		messageConsumer = session.createConsumer(destination);

		// Register QueueConsumer as Message Listener
		System.out.println("Setting message listener...");
		messageConsumer.setMessageListener(this);

		// Start Receiving Message
		System.out.println("Starting generic connection...");
		connection.start();
	}

	/**
	 * Implements the message listener and prints a message.
	 */
	public void onMessage(Message message) {
		MessageHandler handler = new MessageHandler();
		handler.onMessage(message);
	}

	/**
	  * Close JMS related objects.
	  */
	public void close() throws JMSException {
		this.messageConsumer.close();
		this.session.close();
		this.connection.close();
	}

  /**
   * Main method used to execute the UnifyConsumer example
   */
	public static void main(String[] args){
    try{
  		// Create JNDI context
  		Context context = Props.getInitialContext();
      
      // Create new QueueConsumer
      System.out.println("Creating new UnifyConsumer...");
  		UnifyConsumer consumer = new UnifyConsumer(context);
  
  		System.out.println("UnifyConsumer is ready to receive messages...");
  
  		// Receive messages until user quits from program or quit flags true.
  		synchronized (consumer) {
  			while (!consumer.quitFromReceiving) {
  				try {
            // Wait for messages
  					consumer.wait();
  				} catch (InterruptedException interruptedException) {
  					System.out.println("Interruption!");
  					interruptedException.printStackTrace();
  				}
  			}
  		}
  
      // Close up resources when done and exit
  		consumer.close();
  		context.close();
  		System.exit(0);
    }catch(Exception e){
      System.out.println("Problem executing unified model consumer");
      e.printStackTrace();
    }
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -