0
Websphere MQ Explorerを使用して、JMSのinitial context
という新しいfile system
ベースを作成しました。新しい初期コンテキストを使用して、既存のキューに接続するためのJMSキューを作成しました(現在は非Javaベースのフレームワークを使用してアクセスしています)。アプリケーションコード内ファイル・システム・ベースの初期コンテキストを使用したJMSキューへの接続
次のように、私は正常に、コンテキストに接続することができるが:
properties.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory");
properties.put(Context.PROVIDER_URL, "file:C://folder-name//");
try {
val ctx = new InitialContext(properties)
次に、私はのQueueConnectionFactoryを作成する:
val qcf = (ctx.lookup("com.ibm.mq.jms.MQQueueFactory")).asInstanceOf[QueueConnectionFactory]
しかし、これは次の例外をスロー:
javax.naming.NameNotFoundException: com.ibm.mq.jms.MQQueueFactory
at com.sun.jndi.fscontext.RefFSContext.getObjectFromBindings(RefFSContext.java:400)
at com.sun.jndi.fscontext.RefFSContext.lookupObject(RefFSContext.java:327)
at com.sun.jndi.fscontext.RefFSContext.lookup(RefFSContext.java:146)
at com.sun.jndi.fscontext.FSContext.lookup(FSContext.java:127)
at javax.naming.InitialContext.lookup(InitialContext.java:411)
私は接続工場としてcom.ibm.mq.jms.MQQueueFactory
を使用しました。私は、ので.bindings
ファイルで、次の行があります:
MY.QUEUE/FactoryName=com.ibm.mq.jms.MQQueueFactory
は、しかし、それは例外をスローします。
正しい接続ファクトリ名はどこで定義されますか?解決
おかげ
どのMQ jarファイルがクラスパスにありますか? –
com.ibm.mqmqjms-7.5.0.2、com.ibm.mq、jmqi.7.5.0.2、com.ibm.mq.commonservices.jar.7.0.1.4 – user1052610
混合および一致するMQ jarsは推奨されません(7.5.0.2 mixed 7.0.1.4)。同じリビジョンのjarファイルを使用してください。すべての方法で7.5.0.2。 –