0

リモートマシン(ホストB)のWMQ 7.0のキューにアクセスするspring-jmsクライアントを使用して、Websphere AS 8.0(ホストA)にWebアプリケーションをデプロイしました。WAS 8 管理ガイドの指示に従って、メッセージング プロバイダーとして WMQ を含む [リソース] リンクの下の JMS プロバイダーを使用して、JNDI で WMQ ConnectionFactory と WMQ キューを構成しました。また、テスト接続ボタンを使用してテストしました。それは正常に動作します。Spring JMS 構成に従って、JNDI テンプレートと QueueConnectionFactory および Queue(Destination)、DestinationResolver および JMSTemplate を構成しました。

ただし、サーバーを実行して JNDI を介して WMQ にアクセスしようとすると、次の例外がスローされます。

exception message JMSCC0085: A destination was not specified.; nested exception is **com.ibm.msg.client.jms.DetailedInvalidDestinationException**: JMSCC0085: A destination was not specified. with params [B@775e20e, 1c02f7440b8438e5]
org.springframework.jms.InvalidDestinationException:JMSCC0085:**A destination was not specified**.; nested exception is com.ibm.msg.client.jms.DetailedInvalidDestinationException:**JMSCC0085:A destination was not specified.**
at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:469)
at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:534)
at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)

デフォルトの宛先名を出力しようとすると、queue://QM_MGR/Q1 として出力されました。ここで、QM_MGR はキュー マネージャーの名前で、Q1 は WMQ のキューの名前です。

WMQ で JNDI を構成していないこと、JNDI テンプレートで InitialContextFactory と Provider URL を構成していないこと、および web.xml で resource-ref を構成していないことに注意してください。

上記のすべてを試しましたが、失敗しました。そのため、上記の構成を削除しました。

なぜこの例外が発生するのか、何が欠けているのか、またはこの例外を回避するための手順を詳しく説明してくれる人はいますか? 前もって感謝します。

4

2 に答える 2

0

この問題を修正しました。エラーの原因となったのは JNDI 名前空間でした。皆さんありがとう。

于 2012-06-21T15:03:36.853 に答える
0

JNDI で接続ファクトリーと宛先を定義しましたが、対応する MQ を定義する必要があります。たとえば、QM_MGR という名前の MQ キュー マネージャーを、SVRCONN チャネルおよびポート (たとえば 1414) で実行されるリスナーと共に作成する必要があります。また、そのキュー マネージャーで Q1 という名前のキューを作成する必要があります。

上記を実行したかどうかを確認してください。

于 2012-06-18T08:28:13.477 に答える