白玉成的專欄

          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 白玉成 閱讀(2518) 評論(0)  編輯  收藏 所屬分類: Websphere

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


          網站導航:
           
          主站蜘蛛池模板: 南木林县| 托克逊县| 胶南市| 明溪县| 阜城县| 江陵县| 会泽县| 阿坝县| 梁平县| 郸城县| 清新县| 惠来县| 花垣县| 化州市| 望城县| 名山县| 扶沟县| 海城市| 肃南| 遵义县| 南康市| 临漳县| 建水县| 三门县| 申扎县| 双鸭山市| 屏东县| 桂阳县| 清苑县| 望江县| 桑日县| 柏乡县| 慈溪市| 泸州市| 夏河县| 广宗县| 安新县| 温泉县| 杂多县| 汶川县| 射洪县|