Chi*_*hir 17 java spring jboss5.x
我在spring事务中遇到了一个奇怪的问题.我的应用程序使用Spring和EJB.EJB还调用带有注释的Spring服务类@Transaction.我使用Spring JtaTransactionManager进行事务管理.该应用程序打包为一个EAR文件,并部署在jboss5.0上,它工作正常.但是当我指示jboss为每个EAR应用程序使用单独的类加载器时,spring初始化会产生错误.
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'transactionManager' defined in ServletContext resource
[/WEB-INF/applicationContext.xml]: Invocation of init method failed;
nested exception is java.lang.IllegalStateException: No JTA UserTransaction
available - specify either 'userTransaction' or 'userTransactionName' or
'transactionManager' or 'transactionManagerName'
Run Code Online (Sandbox Code Playgroud)
为什么Spring的初始化不成功?
谢谢
小智 1
尝试添加
@EnableTransactionManagement
Run Code Online (Sandbox Code Playgroud)
在保存配置 bean 的配置类上
当我遇到这个问题时,这对我有用,也许您需要事务管理器的其他平台特定实现,但这是一个很好的起点。
@Bean
public PlatformTransactionManager transactionManager() {
JpaTransactionManager txManager = new JpaTransactionManager();
txManager.setEntityManagerFactory(entityManagerFactory());
return txManager;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11615 次 |
| 最近记录: |