白玉成的專欄

          Eclipse,讓我歡喜讓我憂!

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            17 隨筆 :: 0 文章 :: 6 評論 :: 0 Trackbacks
          發送器
          import com.ibm.mq.*
          public class Typesetter {
          public static void main(String args[]) {
          try
          {
          String hostName 
          = "ITSOG" ;
          String channel 
          = "JAVA.CLIENT.CHNL" ;
          String qManager 
          = "ITSOG.QMGR1" ;
          String qName 
          = "SAMPLE.QUEUE" ;

          /*設置MQEnvironment 屬性以便客戶機連接*/
          MQEnvironment.hostname 
          = hostName ;
          MQEnvironment.channel 
          = channel ;
          MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
          MQC.TRANSPORT_WEBSPHERE MQ);
          /*連接到隊列管理器*/
          MQQueueManager qMgr 
          = new MQQueueManager(qManager) ;

          /*設置打開選項以便打開用于輸出的隊列,如果隊列管理器正在停止,我們也已設置了選項去應對不成功情況。*/
          int openOptions = MQC.MQOO_OUTPUT | MQC.MQOO_FAIL_IF_QUIESCING ;

          /*打開隊列*/
          MQQueue queue 
          = qMgr.accessQueue(qName,
          openOptions,
          null,
          null,
          null);

          /*設置放置消息選項我們將使用默認設置*/
          MQPutMessageOptions pmo 
          = new MQPutMessageOptions();

          /*創建消息,MQMessage 類包含實際消息數據的數據緩沖區,和描述消息的所有MQMD 參數*/

          /*創建消息緩沖區*/
          MQMessage outMsg 
          = new MQMessage(); 

          /*設置MQMD 格式字段*/
          outMsg.format 
          = MQC.MQFMT_STRING ; 

          /*準備用戶數據消息*/
          String msgString 
          = "Test Message from PtpSender program "
          outMsg.writeString(msgString);

          /*在隊列上放置消息*/
          queue.put(outMsg, pmo);

          /*提交事務處理*/
          qMgr.commit();

          System.out.println(
          " The message has been Successfully put!\n");

          /*關閉隊列和隊列管理器對象*/
          queue.close();
          qMgr.disconnect();
          }

          catch (MQException ex)
          {
          System.out.println(
          "An MQ Error Occurred: Completion Code is :\t" +
          ex.completionCode 
          + "\n\n The Reason Code is :\t" + ex.reasonCode );
          ex.printStackTrace();
          }

          catch(Exception e) {
          e.printStackTrace();
          }
           
          }

          }


          接收器:
          import com.ibm.mq.* ;
          public class PtpReceiver {
          public static void main(String args[]) {
          try
          {
          String hostName 
          = "ITSOG" ;
          String channel 
          = "JAVA.CLIENT.CHNL" ;
          String qManager 
          = "ITSOG.QMGR1" ;
          String qName 
          = "SAMPLE.QUEUE" ;

          /設置 MQEnvironment 屬性以便客戶機連接*/
          MQEnvironment.hostname 
          = hostName ;
          MQEnvironment.channel 
          = channel ;

          MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
          MQC.TRANSPORT_WEBSPHERE MQ);

          /*連接到隊列管理器*/
          MQQueueManager qMgr 
          = new MQQueueManager(qManager) ;

          /*設置打開選項以便打開用于輸出的隊列,如果隊列管理器停止,我們也
          已設置了選項去應對不成功情況
          */

          int openOptions = MQC.MQOO_INPUT_SHARED |
             MQC.MQOO_FAIL_IF_QUIESCING ;

          /*打開隊列*/
          MQQueue queue 
          = qMgr.accessQueue(qName,
          openOptions,
          null,
          null,
          null);

          /*設置放置消息選項*/
          MQGetMessageOptions gmo 
          = new MQGetMessageOptions();

          /*在同步點控制下獲取消息*/
          gmo.options 
          = gmo.options + MQC.MQGMO_SYNCPOINT ; 

          /*如果在隊列上沒有消息則等待*/
          gmo.options 
          = gmo.options + MQC.MQGMO_WAIT ; 

          /*如果隊列管理器停頓則失敗*/
          gmo.options 
          = gmo.options + MQC.MQGMO_FAIL_IF_QUIESCING ; 

          /*設置等待的時間限制*/
          gmo.waitInterval 
          = 3000 ; 

          /*創建MQMessage 類*/
          MQMessage inMsg 
          = new MQMessage(); 

          /*從隊列到消息緩沖區獲取消息*/
          queue.get(inMsg, gmo) ;

          /*從消息讀取用戶數據*/
          String msgString 
          = inMsg.readString(inMsg.getMessageLength());
          System.out.println(
          " The Message from the Queue is : " + msgString);

          /*提交事務*/
          qMgr.commit();

          /*關閉隊列和隊列管理器對象*/
          queue.close();
          qMgr.disconnect();
          }

          catch (MQException ex)
          {
          System.out.println(
          "An MQ Error Occurred: Completion Code is :\t" +
          ex.completionCode 
          + "\n\n The Reason Code is :\t" + ex.reasonCode );
          ex.printStackTrace();
          }

          catch(Exception e) {
          e.printStackTrace();
          }

          }

          }

          posted on 2008-11-27 23:33 白玉成 閱讀(2513) 評論(0)  編輯  收藏 所屬分類: Websphere

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 南丰县| 永春县| 余干县| 怀仁县| 伊春市| 河南省| 玉山县| 政和县| 阜城县| 贺兰县| 革吉县| 苍山县| 凌源市| 丽江市| 阜阳市| 凉城县| 马山县| 阳原县| 南充市| 博野县| 慈利县| 横山县| 太仓市| 鱼台县| 安多县| 台中县| 融水| 铁力市| 资兴市| 随州市| 华容县| 澄迈县| 许昌市| 青川县| 电白县| 文成县| 观塘区| 华坪县| 铜鼓县| 隆尧县| 钦州市|