メッセージキューイングアクセス機能 TP1/Message Queue - Access 使用の手引

[目次][用語][索引][前へ][次へ]

Javaのサンプルコーディング

コーディング例を次に示します。

 
import JP.co.Hitachi.soft.MQ.Access.*;
                            // import the MQAccess package
 
public class MQAccessSample
{
  private String QMgrName = " ";  // queue manager name
  private MQQueueManager QMgr;    // MQQueueManager object
  public MQAccessSample()
  {
    try {
      // connect to the queue manager
      QMgr = new MQQueueManager(QMgrName);
 
      // set the open options
      int openOptions = MQC.MQOO_OUTPUT |
                                  MQC.MQOO_INPUT_AS_Q_DEF ;
 
      // open the queue
      MQQueue LocalQ =
          QMgr.accessQueue("dynq1", openOptions, null,
                                              null, null);
 
      // create a message object
      MQMessage PutMessage = new MQMessage();
      // UTF format message data
  PutMessage.writeUTF("******** sample put data ********");
 
      // set the put message options
      MQPutMessageOptions mqpmo= new MQPutMessageOptions();
      mqpmo.options = MQC.MQPMO_SYNCPOINT;
 
      // begin local transaction
      QMgr.begin();
 
      // put the message
      LocalQ.put(PutMessage, mqpmo);
 
      // commit local transaction
      QMgr.commit();
 
      // create a message object
      MQMessage GetMessage = new MQMessage();
 
      // set the get message id
      GetMessage.messageId = PutMessage.messageId;
 
      // set the get message options
      MQGetMessageOptions mqgmo= new MQGetMessageOptions();
      mqgmo.options = MQC.MQGMO_SYNCPOINT |
                                        MQC.MQGMO_NO_WAIT;
 
      // begin local transaction
      QMgr.begin();
 
      // get the message
      LocalQ.get(GetMessage, mqgmo);
 
      // commit local transaction
      QMgr.commit();
 
      // display the get message
      String msgText = GetMessage.readUTF();
      System.out.println("The message is: " + msgText);
 
      // close the queue
      LocalQ.close();
 
      // disconnect from the queue manager
      QMgr.disconnect();
    }
    catch (MQException ex)
    {
      // MQ error
      System.out.println
      ("An MQ error occurred : Completion code " +
      ex.completionCode + " Reason code " + ex.reasonCode);
    }
    catch (java.io.IOException ex)
    {
      // buffer error
      System.out.println
        ("An error occurred whilst writing to the buffer:"
                                                    + ex);
    }
  }
 
  public static void main(String args[])
  {
    // execute this sample program
    MQAccessSample sample = new MQAccessSample();
  }
}