spring – JTATransactionManager不承诺数据库

前端之家收集整理的这篇文章主要介绍了spring – JTATransactionManager不承诺数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我将使用数据库和JMS队列,所以我决定使用JTATransactionManager(多个资源).
我使用的是Spring Framework 3.2.3.RELEASE
Hibernate 4.2.1.Final
Glassfish 3.1.2.2

使用JTATransactionManager没有提交给db.I尝试了JPATransactionManager它工作正常.我没有得到JTATransactionManager的任何异常.任何想法我做错了什么?谢谢.

这是一块jpa配置文件

  1. factorybean"
  2. p:packagesToScan="com.pinkshield.jpaTest.domain"
  3. p:dataSource-ref="dataSource"
  4. p:jpaPropertyMap-ref="jpaPropertyMap"
  5. p:jpaVendorAdapter-ref="hibernateVendor" />
  6. sqlServerDialect" />
  7. sql="true" />

这是我的JPA Generic Dao

  1. package com.pinkshield.jpaTest;
  2. import java.util.List;
  3. import javax.persistence.EntityManager;
  4. import javax.persistence.PersistenceContext;
  5. public class GenericDaoJpa

}

这是UserDao

  1. @Repository
  2. public class UserDao extends GenericDaoJpa

这是我的服务代码

  1. @Service
  2. public class UserServiceImpl implements IUserService{
  3. @Autowired UserDao userDao;
  4. @Override
  5. @Transactional
  6. public void saveUser(String name,String lastName)
  7. {
  8. User user=new User();
  9. user.setLastName(lastName);
  10. user.setName(name);
  11. userDao.save(user);
  12. }
  13. }
最佳答案
我认为你需要添加< tx:annotation-driven />到上下文xml.这将运行一个上下文后处理器,它将使用带有AOP方法拦截器的@Transactional包装方法,该拦截器提供您正在寻找的事务行为.

猜你在找的Spring相关文章