项目中用到了Spring/Hibernate/JdbcTemplate/Jbpm4等。
由于Jbpm4中是用Hibernate做ORM mpping,有自己的SessionFactory,自己的事务管理。引起Spring中的事务和Jbpm4中的事务不一致。
其实大家太小看Spring了,我们遇到的问题,想到的问题他都已经帮我们解决,只是我们配置得不对而已。
解决方法:
1.定义DataSoruceTransactionManager作为公共的TransactionManager,不要用HibernateTransactionManager
<bean name="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
2.在Spring的Hibernate SessionFactory和Jbpm4的Hibernate SessionFactory配置中都加上<property name="useTransactionAwareDataSource" value="true"/>属性。
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="useTransactionAwareDataSource" value="true"/>
3.在Jbpm4中不要单独定义TransactionManager。
兄弟们,简单吧!不折腾吧!对,就这么简单就可以解决Spring和Jbpm事务一致的问题。
分享到:
相关推荐
将JBPM4与Spring进行整合,可以充分利用Spring的灵活性和JBPM4的流程管理能力,构建高效且可扩展的OA(Office Automation)工作流系统。 在"风中叶老师讲的JBPM4与Spring整合例子代码"中,我们可以了解到如何将这两...
将jBPM4与Spring整合,可以充分利用Spring的依赖注入和管理能力,提升jBPM4的可维护性和灵活性。本文将详细介绍两种整合jBPM4与Spring的方法。 **方法一:基于Spring的Bean定义** 1. **配置jBPM4的数据源**:在...
2. **调整`applicationContext.xml`**:`applicationContext.xml`是Spring的核心配置文件,在这里我们需要配置数据源、事务管理器以及JBPM的相关组件。示例代码如下: ```xml <bean id="dataSource" class="org....
3. **整合原理**:Spring与JBPM的整合主要基于Spring的bean管理和事务管理能力。通过Spring的ApplicationContext,我们可以配置和管理JBPM的相关组件,如流程引擎、数据源、事务管理器等。同时,Spring的AOP可以用来...
近期网上有人介绍jBPM4与Spring整合的2种方式,但没有人贴出代码,闲着无聊写了个例子,源码见附件,在WEBLOGIC下运行正常,事务由spring控制http://ip:7001/Spring/helloWorld.do
8. **异常处理和事务管理**:由于Spring和jBPM都支持事务管理,确保在异常发生时能够正确回滚事务是非常重要的。配置Spring的事务管理器,并确保与jBPM的事务配置相协调。 9. **规则集成**:jBPM集成了Drools规则...
4. **Spring JDBC 模板与 JBPM**:JBPM 需要数据库支持来存储流程实例、任务和变量。Spring JDBC 模板可以简化数据库操作,提供事务管理,确保与 JBPM 数据库操作的一致性。 5. **工作流定义**:JBPM 使用 BPMN 2.0...
**jbpm4整合struts2+spring2.5+hibernate3.3** 是一个经典的Java企业级应用集成框架,用于构建业务流程管理系统。jbpm4是Business Process Management(业务流程管理)的一个开源框架,它允许开发者设计、执行、监控...
总的来说,Spring与JBPM的整合涉及到环境配置、流程设计、依赖管理和事务集成等多个方面。通过精心的配置和设计,开发者可以利用这两个强大的工具构建出灵活、高效且易于维护的业务流程管理系统。
Struts、Hibernate、Spring 和 jBPM 是四个在企业级应用开发中广泛使用的开源框架,它们结合在一起可以构建出高效且灵活的智能工作流系统。下面将分别介绍这些技术及其在工作流系统中的作用。 **Struts** Struts 是...
通过JBPM4.4、Spring和EXT的整合,可以构建出一个功能完善、易用性强的流程管理系统,不仅能够有效地管理业务流程,还能提供直观的用户界面,提升用户体验。这种整合方式在现代企业级应用中具有很高的实用价值。
总之,Jbpm4.4整合Spring Hibernate4是一个强大的组合,它为开发人员提供了构建高效、灵活的流程驱动应用的工具,简化了业务流程的管理和实现。通过深入理解这些组件和整合方式,开发者可以更好地应对复杂的业务场景...
在与JBPM4整合中,Spring可以用于管理和初始化JBPM的相关组件,如流程引擎、任务服务等。 **2. Struts2框架** Struts2作为MVC模式的Web框架,负责处理HTTP请求并展示视图。在整合JBPM4时,Struts2可以作为前端控制...
- **jar包导入**:避免重复导入jar包,根据项目需求导入jbpm4和相关库的必要jar包。 - **配置文件**:jbpm4的配置文件如`jbpm.cfg.xml`需要正确配置,并且可能需要导入其他配置资源,如`jbpm.spring.default.cfg....
【jbpm+spring配置】是将业务流程管理(Business Process Management, BPM)框架jbpm与企业级应用开发...通过对这个项目的学习,你可以深入理解jbpm的流程设计、Spring的整合技巧以及如何在企业应用中实现流程自动化。
### Spring + Hibernate + jBPM 整合知识点详解 #### 一、项目背景与整合目的 在企业级应用开发中,通常需要实现业务流程管理、数据持久化以及服务层等功能。Spring框架因其强大的依赖注入(DI)和面向切面编程...
在这个场景中,我们关注的是如何将Spring框架与JBPM(Business Process Management,业务流程管理)、日志记录、数据库以及ehcache缓存系统进行整合。这些组件在实际应用开发中扮演着至关重要的角色。下面将详细阐述...