Java MQ队列消息"获取"完成代码2原因2195

时间:2015-05-23 04:53:09

标签: java ibm-mq mq

我有一个简单的MQ Queue读取源,但是我总是在 queue.get 指令上出错。
MQJE001:完成代码' 2',原因' 2195'
我的简单来源是:

    MQEnvironment.hostname = "60.1.6.24";
    MQEnvironment.port = 1414;
    MQEnvironment.channel = "ServerChannel";
    MQEnvironment.userID = "mq";
    MQEnvironment.password = "mqinfotest$2014";
    MQEnvironment.CCSID = Integer.parseInt("1098");

    MQQueueManager qMgr = new MQQueueManager("QMDevelop");
    int openOptions = CMQC.MQOO_INPUT_SHARED | CMQC.MQOO_INQUIRE | CMQC.MQOO_NO_READ_AHEAD;

    MQQueue queue = qMgr.accessQueue("SaptaQueue", openOptions);

    if (queue.getCurrentDepth() > 0) {
        MQMessage getMessage = new MQMessage();
        getMessage.clearMessage();
        queue.get(getMessage, new MQGetMessageOptions());

        String txt = getMessage.readLine();
        System.out.println("txt = " + txt);
    }

    if (queue != null)
        queue.close();
    if (qMgr != null)
        qMgr.disconnect();

数据读取成功但出错!!
我该怎么办才能得到错误。
感谢

1 个答案:

答案 0 :(得分:-1)

IBM MQ 7.5不支持Java 8.此时您需要使用Java 5,6或7:

http://www-01.ibm.com/support/docview.wss?uid=swg27027462#Windows_Java_Technology_ww

您还应确保 ALL 安装中规定的MQ jar文件位于类路径中,而不仅仅是您希望使用的那些文件。