`
lhhlp2011
  • 浏览: 45588 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java.lang.IllegalStateException: Active Spring transaction synchronization or ac

阅读更多
在上一篇文章中,提到spring+hibernate处理oracle的blob字段,又要没有进行事务管理,导致报错如下: java.lang.IllegalStateException: Active Spring transaction synchronization or active JTA transaction with specified [javax.transaction.TransactionManager] required。 解决办法: 1、在spring配置文件中添加事务管理 <!-- spring对hibernate事物的支持 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"></property></bean><bean id="txProxyTemplate" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"><property name="transactionManager" ref="transactionManager"></property><property name="transactionAttributes"><props><prop key="save*"> PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception </prop><prop key="add*"> PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception </prop><prop key="*"> PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception </prop></props></property></bean> 2、在具体应用过程中,需要让你的mgr类受托管与hibernate事务,比如在我的项目中,我的application配置文件中,做如下设置: <bean id="blogArticleMgr" parent="txProxyTemplate"><property name="target"><bean class="com.tyut.blog.mgr.impl.BlogArticleImplMgr"><property name="blogArticleDao" ref="blogArticleDao"></property></bean></property></bean><bean id="blogArticleDao" class="com.tyut.blog.dao.hibernate.BlogArticleDaoHibernate"><property name="sessionFactory" ref="sessionFactory"></property></bean> 通过上面的配置,就可以解决标题的错误了。。。
分享到:
评论
1 楼 xiangxiang0923 2012-10-06  
写的真的好棒~~按照这种方式很快就解决了我的问题。真是太谢谢你了~~~

相关推荐

Global site tag (gtag.js) - Google Analytics