如果要委派给应用服务器,就我所知,必须使用JTATransactionManager,HibernateTransactionManager不是JTA事务管理器。
单个Hibernate SessionFactory的PlatformTransactionManager实现。将一个Hibernate
Session从指定的工厂绑定到线程,可能允许每个工厂一个线程绑定的Session。SessionFactoryUtils和HibernateTemplate知道线程绑定的Session,并自动参与此类事务。对于需要支持此事务处理机制的Hibernate访问代码,必须使用其中之一或通过SessionFactory.getCurrentSession()进行操作。



