0
我試圖使用CCDT
文件中的信息連接到MQ
。我目前可以使用所有的細節連接到MQ
,並獲取並放入隊列中的消息。使用CCDT連接到MQ服務器
大量的谷歌搜索後,我一直無法找到任何示例代碼,允許我使用CCDT
文件連接。
其中一位同事向我轉發了他的JMS
連接代碼,但我無法將其移植到C#
。
的JAVA
代碼如下 -
public class MQTest {
public static void main(String[] args) {
MQQueueManager queueManager = null;
URL ccdtFileUrl = null;
MQMessage mqMessage = null;
//MQPutMessageOptions myPMO = null
try {
String QM = "IB9QMGR";
String QUEUE1 = "TEST";
System.out.println("Starting MQClient Put Program: ");
ccdtFileUrl = new URL("file:///D:/AMQCLCHL.TAB") ;
ccdtFileUrl.openConnection();
queueManager = new MQQueueManager("SDCQMGR.T1", ccdtFileUrl);
System.out.println("Connected to QMGR ");
int openOptions = MQC.MQOO_OUTPUT;
MQQueue InQueue = queueManager.accessQueue(QUEUE1,openOptions,null,null,null);
MQMessage inMessage = new MQMessage();
inMessage.writeString("###Testing####");
InQueue.put(inMessage);
System.out.println("Message Id is :" + inMessage.messageId);
System.out.println(inMessage.toString());
InQueue.close();
queueManager.disconnect() ;
}
catch(MQException ex){
System.out.println("MQ Error - Reason code :" + ex.reasonCode);
}
catch (Exception e){
System.out.println("Error : " + e);
}
}
}
代替URL
,我使用的URI
(在C#)來設置的文件位置。 (這可能被錯誤地使用。不知道要使用的,雖然還有什麼。)
Uri ccdtFileUrl = new Uri("file:///D:/AMQCLCHL.TAB") ;
,但我不能在URI使用openConnection()
。另外,
queueManager = new MQQueueManager("SDCQMGR.T1",ccdtFileUrl);
給出了一個參數重載異常。由於URI在C#中不受支持。
我試過查找樣本,但我發現了一些JMS樣本,那就是它。尋找一些示例代碼在C#中進行連接。
只是一些澄清。 'QM1'是我的隊列管理器名稱。 此外,在設置「AMQCLCHL.TAB」時,應該如何指定我的位置?它在'D:/ AMQCLCHL.TAB'(在HDD上)或'\ TAB \ AMQCLCHL.TAB'(在我的項目中,導入)。 – doodla 2014-09-29 04:43:36
它應該指向文件系統上的一個。 – Shashi 2014-09-29 05:06:13
好的。請格式化?只是'「D:/AMQCLCHL.TAB」'? – doodla 2014-09-29 05:08:42