gpt4 book ai didi

java - 为什么在上下文查找中找不到我的队列?

转载 作者:行者123 更新时间:2023-12-04 10:03:59 25 4
gpt4 key购买 nike

我们有一个将消息发送到 IBM MQ 队列的服务。

我试图让它在 Liberty 中工作,但是当服务类在 postConstruct 中时,我得到一个 NullPointerException,通过它的 JNDI 名称查找队列。

这是 server.xml 配置的相关部分:

<resourceAdapter id="mqJms" location="/etc/liberty/wmq/wmq.jmsra.rar"/>
<authData id="mqJms.auth" user="user" password="password"/>

<jmsQueueConnectionFactory jndiName="jms/queueConnectionFactory" connectionManagerRef="ConMgr4" containerAuthDataRef="mqJms.auth">
<properties.mqJms transportType="CLIENT"
hostName="server" port="1234"
channel="CHANNEL"/>
</jmsQueueConnectionFactory>

<connectionManager id="ConMgr4"
connectionTimeout="30s"
maxPoolSize="50" minPoolSize="1"
reapTime="60s" agedTimeout="0"/>

<jmsQueue id="jms/outgoingRequestQueue" jndiName="jms/outgoingRequestQueue">
<properties.mqJms queueName="QUEUEOUT"/>
</jmsQueue>

<jmsActivationSpec id="earname/warname/JMSService" authDataRef="mqJms.auth">
<properties.mqJms destinationRef="jms/outgoingRequestQueue" destinationType="javax.jms.Queue"/>
</jmsActivationSpec>

这是我得到的错误:
J2CA8500E: An error occurred while attempting to configure a property queueName of configuration element com.ibm.ws.jca.adminObject.supertype[jms/incomingResponseQueue] on the class com.ibm.mq.connector.outbound.MQQueueProxy: java.lang.NullPointerException
at com.ibm.ws.jca.internal.BootstrapContextImpl.configure(BootstrapContextImpl.java:471)

这让我觉得 server.xml 中可能缺少某些内容,但我无法弄清楚它是什么。

最佳答案

根据MQ resource adapter documentation , queueName属性实际上应该是 baseQueueName .此外,您可能需要指定 queueManager在连接工厂或 baseQueueManagerNamejmsQueue如果空字符串的默认 qmgr 值对您的连接无效,则属性。

关于java - 为什么在上下文查找中找不到我的队列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61681891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com