def mqProps = new Hashtable<String, Object>()
mqProps.put(MQConstants.CHANNEL_PROPERTY, 'CHANNEL')
mqProps.put(MQConstants.PORT_PROPERTY, PORT)
mqProps.put(MQConstants.HOST_NAME_PROPERTY, 'HOST')
mqProps.put(MQConstants.USER_ID_PROPERTY, 'myuser') // is it the correct property for the user?
mqProps.put(MQConstants.PASSWORD_PROPERTY, 'mypassword') // is it the correct property for the password?
def qMgr = new MQQueueManager('QM', mqProps)
javax.script.ScriptException: com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2538'
...
Caused by: com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2538'.
...
Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2538;AMQ9204: Connection to host 'HOST(PORT)' rejected.
...
Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2538;AMQ9204: Connection to host 'HOST/address:PORT' rejected.
...
Caused by: java.net.ConnectException: Connection timed out: connect
...
def qMgr = new MQQueueManager('QM', mqProps)
你能给我解释一下这个问题的原因吗?非常感谢。
原因代码2538是mqrc_host_not_available。
您可以通过使用IBM MQ附带的mqrc
命令行工具快速发现这一点。类型:
mqrc 2538
你会被告知:
2538 0x000009ea MQRC_HOST_NOT_AVAILABLE
可能最常见的错误是,在队列管理器上运行的侦听器使用的端口号与您在客户端应用程序连接详细信息中所使用的端口号不同。
您在问题中没有向我们展示关于在队列管理器上运行的侦听器的任何细节,因此我们将不得不让您自己检查。
我正在编写一个从MQ读取分段消息的使用者。我使用Spring JMS/Spring集成来处理其他队列。我知道IBM MQ不支持JMS中的消息分段:(这里的相关问题:如何在Spring integration中组装MQ消息段) 下面是我想出的将IBM MQ类用于java和Spring的方法。 MQ对象的Bean定义。 消费者代码: 使用这种配置,使用者可以按照需要工作,它将所有分段的消息组装起来,作
当我尝试测试我的非常简单的消息流时,我得到了这个错误: MQJE001:完成代码“%2”,原因“2495”。 我看过与这个问题有关的其他问题,但没有一个解决方案能帮助我解决这个问题。 我也尝试过仅仅部署这个应用程序并将消息放到队列中,但是MQInput节点没有得到任何消息,即使在失败输出(转换)中也是如此,并且MQExplorer在队列中显示了一条消息。 我正在使用本地集成节点和本地队列管理器。
使用以下SSLCipherSuite创建MQQueueManager对象时: 我想问题出在MQ配置端,因为我的jre 返回“TLS_RSA_WITH_AES_128_CBC_SHA”作为密码套件之一。但我不确定QMgr配置到底出了什么问题。谢谢你的提示。
我在从MQ本地队列获取消息时遇到以下异常。这是我的连接代码。运行该代码后,我遇到以下异常 这是我的代码