我正在尝试升级从hibernate 3.6.7到4.0.1,并从JDK 1.6升级到JDK 1.7。迁移配置文件等等...之后,我可以正常运行我的应用程序。
首先是我的hibernate cfg.xml的一部分:
但是我遇到了一个问题,涉及嵌套的sessionFactory.getCurrentSession().beginTransaction()。这在hibernate 3.6.7中可以正常工作,但没有"hibernate.transaction.factory_class"属性。
有人知道我哪里做错了吗?
堆栈跟踪如下:
首先是我的hibernate cfg.xml的一部分:
<property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory< /property>
<property name="current_session_context_class">thread</property>
但是我遇到了一个问题,涉及嵌套的sessionFactory.getCurrentSession().beginTransaction()。这在hibernate 3.6.7中可以正常工作,但没有"hibernate.transaction.factory_class"属性。
有人知道我哪里做错了吗?
堆栈跟踪如下:
org.hibernate.TransactionException: nested transactions not supported
at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:152)
at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1263)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:350)
at $Proxy4.beginTransaction(Unknown Source)