我正在配置一个Web应用程序以通过WMQ连接到另一个Web应用程序。

当两个应用程序都连接到同一台本地服务器时,MQ配置在本地可以正常工作。

但是,当我将每个应用程序部署在自己的服务器上时,出现CCDT错误。

服务器1-通过远程JNDI连接到服务器2

服务器2-拥有WMQ连接工厂,队列和激活规范。

测试时,在Server 1日志上,它会在下面显示异常消息。令我感到困惑的是,当服务器2被配置为通过CCDT连接到MQ时,服务器1会如何寻找TAB文件。另外,服务器2不包含任何异常。

任何想法我做错了什么配置?

Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2278;AMQ9516: File error occurred. [1=java.io.FileNotFoundException[\ccdt\CCDT.tab (The system cannot find the path specified.)],3=file:/ccdt/CCDT.tab]
    at com.ibm.mq.jmqi.system.internal.CCDT.parse(CCDT.java:333)
    at com.ibm.mq.jmqi.system.internal.CCDT.<init>(CCDT.java:191)
    at com.ibm.mq.jmqi.remote.internal.system.RemoteCCDT.<init>(RemoteCCDT.java:68)
    at com.ibm.mq.jmqi.remote.internal.RemoteFAP.getCcdt(RemoteFAP.java:413)
    at com.ibm.mq.jmqi.remote.internal.RemoteFAP.jmqiConnect(RemoteFAP.java:1580)
    at com.ibm.mq.jmqi.remote.internal.RemoteFAP.jmqiConnect(RemoteFAP.java:1286)
    at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:367)

最佳答案

您有以下解决方案:


您可以使用远程JNDI,但是您还需要在同一位置的本地节点上所有必需的资源,因此在这种情况下,\ ccdt \ CCDT.tab文件必须在同一路径上可用
重新配置连接工厂以包含所有详细信息,而不是ccdt。
使用本地资源定义-在两侧都创建资源,不仅可以在远程创建资源,还可以从本地服务器/群集获取资源。因此,如果您的server1正在发送消息,则应创建连接工厂并在其中排队。如果集群(server2)上有MDB,则应在其中创建队列和激活规范。


通常更容易在本地创建正在使用资源的应用程序的资源。

09-30 09:44