Liberty Server:在非事务会话上调用“ commit”方法无效

问题描述

我正在从WAS8迁移到Liberty。以下是我的代码

connection = factory.createConnection();
session = connection.createSession(true,Session.AUTO_ACKNowLEDGE);

当我运行我的应用程序时,出现错误提示

DetailedIllegalStateException: JMSCC0014: It is not valid to call the 'commit' method on a nontransacted session.

Server.xml

<variable name="wmqJmsClient.rar.location"                    
  value="${server.config.dir}/wmq/wmq.jmsra.rar"/>

 <jmsConnectionFactory jndiName="jms/xyz/QCF" >
     <properties.wmqJms 
        transportType="CLIENT"
        hostName="host3153.GOT.NET" 
        port="1414"
        channel="CLIENTS.xyz"
        queueManager="host141Q"/>
      <connectionManager maxPoolSize="10"/>
   </jmsConnectionFactory>
  

   <jmsQueue id="jms/queue1" jndiName="jms/xyz/queue/response">
     <properties.wmqJms 
        baseQueueName="host1533A.RESP" 
        baseQueueManagerName="host141Q" CCSID="1208" expiry="APP" failIfQuiesce="true" persistence="APP" priority="APP" putAsyncAllowed="ENABLED" readAheadAllowed="ENABLED" readAheadClosePolicy="ALL" receiveConversion="QMGR" targetClient="JMS" receiveCCSID="1208" />
    </jmsQueue>
    
    <jmsQueue id="jms/queue2" jndiName="jms/xyz/queue/transportAssignment/request">
     <properties.wmqJms 
        baseQueueName="host1533A.RQST" 
        baseQueueManagerName="host141Q" CCSID="1208" expiry="APP" failIfQuiesce="true" persistence="APP" priority="APP" putAsyncAllowed="ENABLED" readAheadAllowed="ENABLED" readAheadClosePolicy="ALL" receiveConversion="QMGR" targetClient="JMS" receiveCCSID="1208" />
    </jmsQueue>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)