调用所有MQ专家

我的桌子下面有一个盒子,用于复制我们的生产环境:

WebSphere 6.1 Fedora Linux MQ 6.0

每当我们的某个应用程序尝试将消息发送到MQ队列时,我们会收到以下错误:MQJE018:协议错误 - 收到意外的段类型

关于这可能意味着什么的任何建议都将被理解,堆栈跟踪在下面。

Dump of callerThis =
Object type = com.ibm.ejs.jms.listener.MDBListenerImpl
com.ibm.ejs.jms.listener.MDBListenerImpl@744c744c

==> Performing default dump from com.ibm.ejs.jms.JMSDiagnosticModule  = Wed May 06 13:09:58 BST 2009
Dump of callerThis =
Object type = com.ibm.ejs.jms.listener.MDBListenerImpl
com.ibm.ejs.jms.listener.MDBListenerImpl@744c744c

Linked exception = com.ibm.mq.MQException: MQJE001: An MQException occurred: Completion Code 2, Reason 2195
MQJE018: Protocol error - unexpected segment type received
        at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:238)
        at com.ibm.mq.MQClientManagedConnectionFactoryJ11._createManagedConnection(MQClientManagedConnectionFactoryJ11.java:318)
        at com.ibm.mq.MQClientManagedConnectionFactoryJ11.createManagedConnection(MQClientManagedConnectionFactoryJ11.java:338)
        at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.java:84)
        at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConnectionManager.java:168)
        at com.ibm.mq.MQQueueManagerFactory.obtainBaseMQQueueManager(MQQueueManagerFactory.java:774)
        at com.ibm.mq.MQQueueManagerFactory.procure(MQQueueManagerFactory.java:690)
        at com.ibm.mq.MQQueueManagerFactory.constructQueueManager(MQQueueManagerFactory.java:646)
        at com.ibm.mq.MQQueueManagerFactory.createQueueManager(MQQueueManagerFactory.java:153)
        at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:544)
        at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:69)
        at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:2401)
        at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:1783)
        at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:110)
        at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:67)
        at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:57)
        at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQXAQueueConnectionFactory.java:80)
编辑:我在IBM文档中查找了原因代码,这些代码几乎没有提供帮助

2195 (X'0893')
MQRC_UNEXPECTED_ERROR
Explanation:

The call was rejected because an unexpected error occurred.
Completion Code:

MQCC_FAILED
Programmer Response:

Check the application's parameter list to ensure, for example, that the correct number of parameters was passed, and that data pointers and storage keys are valid. If the problem cannot be resolved, contact your system programmer.

    * On z/OS, check whether any information has been displayed on the console. If this error occurs on an MQCONN or MQCONNX call, check that the subsystem named is an active MQ subsystem. In particular, check that it is not a DB2(TM) subsystem. If the problem cannot be resolved, rerun the application with a CSQSNAP DD card (if you have not already got a dump) and send the resulting dump to IBM.
    * On OS/2 and i5/OS, consult the FFST record to obtain more detail about the problem.
    * On HP OpenVMS, Compaq NonStop Kernel, and UNIX systems, consult the FDC file to obtain more detail about the problem.
有帮助吗?

解决方案

好的,终于设法解决了这个错误。这与MQ安装它自己无关。我知道这是某种网络问题所以我将websphere中的主机名设置从主机名更改为盒子的ip,一切正常。

注意,我在队列和队列连接工厂上更改了主机名。

希望能有所帮助。

卡尔

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top