2

次のコマンドを実行しようとしています。

MQConnectionFactory connFactory = new MQConnectionFactory();

追跡できないように見えるヌルポインター例外が発生します。以下にスタックトレースを添付しました。

java.lang.NullPointerException
  at com.ibm.msg.client.jms.internal.JmsFactoryFactoryImpl.getInstance(JmsFactoryFactoryImpl.java:169)
  at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.setProviderFactory(JmsConnectionFactoryImpl.java:165)
  at com.ibm.mq.jms.MQConnectionFactory.<init>(MQConnectionFactory.java:271)
  at com.foundation.agent.plugin.JMSClient.createConnection(JMSClient.java:154)
  at com.foundation.agent.plugin.JMSClient.launch(JMSClient.java:108)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:597)

クラスローダーを使用して を呼び出すクラスをロードしているnew MQConectionFactory()ため、JBoss JMS ライブラリが原因である可能性があります。

より詳しい情報:

  • com.ibm.mq.runtime_7.0.1.0\lib

瓶:

  • com.ibm.mq.headers.jar
  • com.ibm.mqjms.jar
  • jms.jar
  • com.ibm.mq.jar
  • コネクタ.jar
  • jta.jar
  • com.ibm.mq.jmqi.jar
  • dhbcore.jar
  • providerutil.jar
  • com.ibm.mq.pcf.jar
  • fscontext.jar
4

3 に答える 3

1

WMQのv7.0.1.0を使用しているようです。「 Javaを使用したv7WMQ」マニュアルの説明に従って、CLASSPATHを構成しましたか?標準インストールを想定すると、実行時にCLASSPATHに必要なjarはcom.ibm.mqjms.jarのみです。標準インストールには約10個のjarがありますが、リストには表示されないため、CLASSPATH変数にあるものと、java / libにあるもののどちらをリストしたかはわかりませんが、どちらの場合も期待するリストではありません。どこかからjarファイルを取得した場合は、クライアントのフルインストールを使用してみてください

于 2010-07-03T04:23:06.033 に答える
1

169 行目の JmsFactoryFactoryImpl のコードを逆コンパイルすると、数行上にトレース出力があることがわかります。あなたが持っていたのと同じ例外を持つ私のシステムでは、システムエラー(私の場合はTomcatのcatalina.out)のトレース出力は次のことを明らかにしました:

      WorkQueueMananger Contents
                           --------------------------

|   Maintain ThreadPool size     :-  false
|   Maximum ThreadPool size      :-  -1
|   ThreadPool inactive timeout  :-  0
|   unavailable -                :-  com.ibm.msg.client.commonservices.CSIException: JMSCS0002

そのコードを使用して、http: //publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp ?topic=%2Fcom.ibm.mq.javadoc.doc%2FWMQJMSClasses%2Ferrorcodes.html にアクセスできます。

于 2012-06-06T08:00:22.000 に答える
0

必要なすべての JAR を追加した後でも、同じ問題に直面しました。最後に、JDK を IBM JDK から Oracle/Sun JDK に変更した後、問題は解決しました。IBM JDK (スタンドアロン) には、接続ファクトリーを作成するのに十分なものがないようです。

于 2013-08-21T22:34:46.960 に答える