gpt4 book ai didi

spring - 断言失败 : Transaction MARKED_FOR_JOINED after isOpen() call

转载 作者:行者123 更新时间:2023-11-28 23:22:52 25 4
gpt4 key购买 nike

在 tomcat 8 服务器上部署时,出现以下错误

AssertionFailure: Transaction MARKED_FOR_JOINED after isOpen() call

配置详情如下。

  1. 服务器:tomcat 8
  2. hibernate 3
  3. Spring 3

服务器的Context.xml..

我做了数据库设置:

<Resource name="jdbc/meerkatDataSource" 
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@10.237.59.104:1521:MEERKAT"
username="meerkat"
password="meerkat"
maxActive="100"
maxIdle="20"
minIdle="5"
maxWait="10000"/>

<Resource name="UserTransaction" auth="Container" type="javax.transaction.UserTransaction"
factory = "org.objectweb.jotm.UserTransactionFactory"/>

<Transaction factory="org.objectweb.jotm.UserTransactionFactory" jotm.timeout="60"/>

<Resource
name="TransactionSynchronizationRegistry"
auth="Container"
type="javax.transaction.TransactionSynchronizationRegistry"
factory="org.objectweb.jotm.TransactionSynchronizationRegistryFactory"/>


Transaction.xml -->

<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="userTransactionName" value="java:comp/UserTransaction">
<property name="transactionSynchronizationRegistryName" value="java:comp/env/TransactionSynchronizationRegistry"/>
</bean>

<tx:annotation-driven transaction-manager="transactionManager" />


Persistent.xml-->

<persistence-unit name="meerkatPersistenceUnit" transaction-type="JTA">
<jta-data-source>jdbc/meerkatDataSource</jta-data-source>

如果要进行任何更改,请提出建议。另请注意,数据库设置严格在tomcat服务器下。

最佳答案

据我了解,在这里你使用数据源 type="javax.sql.DataSource"使用工厂:"org.apache.tomcat.jdbc.pool.DataSourceFactory"

事务管理器是 jta 类型:class="org.springframework.transaction.jta.JtaTransactionManager">

如果把data bas换成有类型就可以解决 javax.sql.XADataSource 依次使用类: 一个 org.enhydra.jdbc.pool.StandardXAPoolDataSource。确保持久性管理器使用相同的数据源。

有关更多信息,请访问:

https://tomcat.apache.org/tomcat-8.0-doc/jdbc-pool.html

http://xapool.ow2.org/doc/api/jdoc-1.3/org/enhydra/jdbc/pool/StandardXAPoolDataSource.html

关于spring - 断言失败 : Transaction MARKED_FOR_JOINED after isOpen() call,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40968512/

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