【发布时间】:2020-05-12 21:48:43
【问题描述】:
在使 MQ 连接在 Liberty 中工作时,我遇到了以下问题。
收到消息后,出现如下错误: JMSCC0014:在非事务会话上调用“提交”方法无效。
我进行了一些搜索,发现需要使用 XA 版本的连接工厂,但我不知道这是否确实是解决方案,我还没有找到任何明确的示例来说明如何实现在我的配置中。
这里是 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/incomingRequestQueue" jndiName="jms/incomingRequestQueue">
<properties.mqJms baseQueueName="QUEUEIN"/>
</jmsQueue>
queueConnectionFactory是通过代码中的JNDI获取的。
任何帮助将不胜感激。
【问题讨论】:
标签: java websphere-liberty open-liberty