连接到 IBM Websphere MQ 时出现 NullPointerException

Posted

技术标签:

【中文标题】连接到 IBM Websphere MQ 时出现 NullPointerException【英文标题】:NullPointerException while connecting to IBM Websphere MQ 【发布时间】:2015-10-27 10:59:13 【问题描述】:

我是 IBM websphere MQ 的新手并下载了试用版。 v7.5。我通过使用安装 IBMMQCLient rpm 后使用的一些 jar 独立运行我的客户端应用程序。 我包括的罐子:

com.ibm.mqjms.jar com.ibm.mq.jmqi.jar dhbcore.jar

我在启动与 queueManager 的连接时遇到问题。

代码:

    JmsFactoryFactory ff = JmsFactoryFactory.getInstance(WMQConstants.WMQ_PROVIDER);

    JmsConnectionFactory cf = ff.createConnectionFactory();

    cf.setStringProperty(WMQConstants.WMQ_HOST_NAME, "localhost");
    cf.setIntProperty(WMQConstants.WMQ_PORT, 1414);
    cf.setStringProperty(WMQConstants.WMQ_CHANNEL, "SYSTEM.DEF.SVRCONN");
    cf.setIntProperty(WMQConstants.WMQ_CONNECTION_MODE, WMQConstants.WMQ_CM_CLIENT);
    cf.setStringProperty(WMQConstants.WMQ_QUEUE_MANAGER, "TestManager");

    **connection = cf.createConnection();**

我的 FFST 详细信息低于 NPE:

Exception in thread "main" java.lang.NullPointerException
    at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createV7ProviderConnection(WMQConnectionFactory.java:6890)
    at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(WMQConnectionFactory.java:6277)
    at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createConnection(JmsConnectionFactoryImpl.java:285)
    at com.ibm.mq.jms.MQConnectionFactory.createCommonConnection(MQConnectionFactory.java:6233)
    at com.ibm.mq.jms.MQConnectionFactory.createConnection(MQConnectionFactory.java:6262)
    at performance.IBMTestProducer.start(IBMTestProducer.java:155)
    at performance.IBMTestProducer.main(IBMTestProducer.java:219)

如果我需要添加更多的罐子或者我在这里做错了什么,请告诉我。

【问题讨论】:

【参考方案1】:

com.ibm.mqjms.jar、com.ibm.mq.jmqi.jar、dhbcore.jar

我认为您缺少 MQ JAR 文件并且您可能不需要“dhbcore.jar”。对于常规 MQ/JMS 应用程序(使用 MQ v7.5),以下是应该在 CLASSPATH 中的 MQ JAR 文件:

com.ibm.mq.jar com.ibm.mq.headers.jar com.ibm.mq.jmqi.jar com.ibm.mq.pcf.jar connector.jar com.ibm.mq.commonservices.jar com.ibm.mqjms.jar fscontext.jar jms.jar jndi.jar jta.jar providerutil.jar

【讨论】:

以上是关于连接到 IBM Websphere MQ 时出现 NullPointerException的主要内容,如果未能解决你的问题,请参考以下文章

尝试远程连接到 Websphere 上的 JMS 队列时出现 sun/io/MalformedInputException

连接到 MQ 时出现错误“2035”(“MQRC_NOT_AUTHORIZED”)

从 WebSphere 8 运行 Java 8 MQ 应用程序时出错

将 Apache ServiceMix 连接到 Websphere MQ

无法使用 JNDI 连接到 Websphere MQ

为啥在 SSIS 包中连接到 DB2 时出现错误 58031?