Websphere MQチュートリアルのHello world

6857 ワード

このチュートリアルはオリジナルです.
アウトライン:
          
Creating the queue manager
Creating the local queue
Putting a test message on the local queue
Verifying that the test message was sent
1.Creating the queue manager using WebSphere MQ Explorer
Start WebSphere MQ Explorer.
In the Navigator view, right-click the Queue Managers folder, then click New > Queue Manager. The Create Queue Manager wizard opens.
In the Queue Manager name field, type QM_APPLE.
Select the Make this the default queue manager check box.
Click Next twice to go to Step 3 of the wizard.
Ensure that Auto Start Queue Manager is selected.
Click Next to go to Step 4 of the wizard.
Ensure that the Create listener configured for TCP/IP check box is selected.
If the Finish button is not available, type another port number in the Listen on port number field. If the current value is 1414, try typing 1415 or 1416.
Click Finish.
Results
An icon representing this queue manager is displayed in the
Queue Managers folder in the
Navigator view of WebSphere MQ Explorer, and the queue manager automatically starts running after you create it, as shown in the following screen capture:
Creating the queue manager using MQSC
About this task
Open a command prompt, and follow these steps:
Create a default queue manager called QM_APPLE by typing the command:
crtmqm -q QM_APPLE
Messages tell you that the queue has been created and that the default WebSphere MQ objects have been created.
Start this queue manager by typing the command: strmqm A message tells you when the queue manager has started.
Results
You have now created a queue manager with the name QM_APPLE. The next task is to create a local queue that this queue manager will manage.
2.Creating the local queue using WebSphere MQ Explorer
In the Navigator view, expand the Queue Managers folder.
Expand queue manager QM_APPLE.
Right click the Queues folder, then click New > Local Queue... The New Local Queue wizard opens.
In the Name field, type Q1
Click Finish.
Results
The new queue,
Q1, is displayed in the
Content view, as displayed in the following screen capture:
If the queue is not displayed in the Content view, click Refresh at the top of the Content view.
Creating the local queue using MQSC
About this task
Open a command prompt and follow these steps:
Enable MQSC commands by typing the command: runmqsc
Type the following command: define qlocal (Q1) Messages tell you that the queue has been created and that the default WebSphere MQ objects have been created.
Stop MQSC by typing the command: end
Results
You have now created a local queue called Q1. The next task is to put a test message to this newly created local queue.
    
3.Putting a test message on the queue using WebSphere MQ Explorer
Eclipseで、次のクラスを作成します.
package com.ibm.test;

import java.io.IOException;

import com.ibm.mq.MQC;
import com.ibm.mq.MQException;
import com.ibm.mq.MQGetMessageOptions;
import com.ibm.mq.MQMessage;
import com.ibm.mq.MQPutMessageOptions;
import com.ibm.mq.MQQueue;
import com.ibm.mq.MQQueueManager;

public class MQSample {
	//             
    private static String qmName; 
    private static String qName;
    
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
	     qmName ="QM_APPLE";
         qName = "Q1";
        System.out.println("QManager:"+qmName);
        System.out.println("QueueName:"+qName);
        try {
            //                 
            MQQueueManager qMgr = new MQQueueManager(qmName); 

            //            
            // Note. All WebSphere MQ Options are prefixed with MQC in Java. 
            @SuppressWarnings("deprecation")
			int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT; 

            //     
            MQQueue localQ = qMgr.accessQueue(qName, openOptions); 
            
            //         
            MQMessage putMessage = new MQMessage(); 
            putMessage.writeUTF("Hello World!"); 

            //         (    )
            MQPutMessageOptions pmo = new MQPutMessageOptions(); 
            
            //        
            localQ.put(putMessage,pmo); 
                        
//            MQMessage retrievedMessage = new MQMessage();
//            retrievedMessage.messageId = putMessage.messageId; 
//
//            //         (    )
			// MQGetMessageOptions gmo = new MQGetMessageOptions(); 
//
//            //         
//            localQ.get(retrievedMessage, gmo); 
//            String msgText = retrievedMessage.readUTF();

//            System.out.println("The message is: " + msgText); 

            //    
            localQ.close(); 
            //         
            qMgr.disconnect(); 
        }catch (MQException ex) { 
            System.out.println("A WebSphere MQ error occurred : Completion code " 
            + ex.completionCode + " Reason code " + ex.reasonCode); 
        }catch (IOException ex) { 
            System.out.println("An error occurred whilst writing to the message buffer: " + ex); 
        }catch(Exception ex){
            ex.printStackTrace();
        }

	}

}
コンパイル時にWebsphere MQ関連クラスを追加する必要があります.
4.Verifying that the test message was sent using WebSphere MQ Explorer
In the Navigator view, expand the Queue Managers folder, then expand QM_APPLE.
Click the Queues folder.
In the Content view, right-click Q1, then click Browse Messages.... The Message browser opens to show the list of the messages that are currently on Q1.
Double-click the last message to open its properties dialog.
Results
On the
Data page of the properties dialog, the
Message data field displays the content of the message in human-readable form, as shown in the following screen capture:
Verifying that the test message was sent using MQSC
About this task
The
amqsget sample program is used to get the message back from the queue.
Open a command prompt and follow these steps:
Start the amqsget sample program:
On Windows®, type the following command:amqsget Q1
On Linux®, change to the/opt/mqm/samp/bin directory and type the following command: ./amqsget Q1
Results
The sample program starts, and your message is displayed along with any other messages on this queue. After a pause of 15 seconds, the sample ends and the command prompt is displayed again.
Congratulations! You have now completed this tutorial.