我做了HibernateSystemException,尽管我做了在不同论坛上提到的所有事情。
这是applicationContext.xml的一部分
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
我还将@Transactional注释放在班级上方。
@Transactional
public class MyClassImpl
最佳答案
A)这是错误的交易管理器:
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
您需要
org.springframework.orm.hibernate3.HibernateTransactionManager
,如13.3.3 Hibernate > Declarative transaction demarcation所示。DataSourceTransactionManager
用于纯JDBC,不适用于Hibernate(请参见12.3.8 JDBC > DataSourceTransactionManager
)。B)您还需要此行:
<tx:annotation-driven transaction-manager="transactionManager" />
关于java - HibernateSystemException:没有绑定(bind)到线程的 hibernate session ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6571074/