Jms Artemis ActiveMQ-AMQ159005:无效的会话模式客户端\u确认

Jms Artemis ActiveMQ-AMQ159005:无效的会话模式客户端\u确认,jms,activemq-artemis,Jms,Activemq Artemis,我正在尝试使用确认模式客户端创建会话,但遇到以下异常: JMSException: Could not create a session: AMQ159005: Invalid Session Mode CLIENT_ACKNOWLEDGE 代码: RemoteJmsDispatcher: <pooled-connection-factory name="activemq-ra-remote-dispatcher" entries="java:/RemoteJmsDispatcher

我正在尝试使用确认模式客户端创建会话,但遇到以下异常:

JMSException: Could not create a session: AMQ159005: Invalid Session Mode CLIENT_ACKNOWLEDGE
代码:

RemoteJmsDispatcher:

 <pooled-connection-factory name="activemq-ra-remote-dispatcher" entries="java:/RemoteJmsDispatcher java:jboss/exported/jms/ConnectionFactory" connectors="netty-remote-dispatcher" min-large-message-size="524288" client-id="wildfly-dev" retry-interval="5000" max-retry-interval="5000" group-id="my-broadcast-group" user="xxxxx" password="xxxxx" enlistment-trace="true">
     <inbound-config use-jndi="true" rebalance-connections="true" use-local-tx="false"/>
 </pooled-connection-factory>

我搜索了错误代码AMQ159005,没有找到任何东西

我需要使用此模式创建,因为我有一个更大的消息处理,如果我遇到一些异常,我需要将消息返回队列


提前感谢。

池连接工厂是一个基于JCA的连接工厂(来自Artemis JCA资源适配器),它不允许在会话上设置
客户端确认
模式。看见我建议您使用普通(即非基于JCA的)连接工厂。

您试图在什么上下文中创建此会话?您是否在JavaEE应用服务器中?您是否从基于JCA的连接工厂创建的连接创建会话?嗨,Justin,谢谢您的回复。是的,我正在使用JBossWildfly 13。我正在使用远程连接工厂创建连接。我在问题中添加了代码。您在EJB中吗?如何在服务器配置中定义“java:/RemoteJmsDispatcher?”添加到问题中。关于EJB,我不确定。我如何确认这一点?谢谢。该类(或链上的一个调用者)可能要么用@Stateless注释,要么用ejb-jar.xml文件.Ok打包在部署中。知道了。我将检查是否可以在wildfly上创建一个非池连接工厂并使用它。我理解这个问题。谢谢你的帮助!
 <pooled-connection-factory name="activemq-ra-remote-dispatcher" entries="java:/RemoteJmsDispatcher java:jboss/exported/jms/ConnectionFactory" connectors="netty-remote-dispatcher" min-large-message-size="524288" client-id="wildfly-dev" retry-interval="5000" max-retry-interval="5000" group-id="my-broadcast-group" user="xxxxx" password="xxxxx" enlistment-trace="true">
     <inbound-config use-jndi="true" rebalance-connections="true" use-local-tx="false"/>
 </pooled-connection-factory>