`
iuottp
  • 浏览: 171528 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

spring和jbpm事务整合问题

阅读更多

 

标题:spring和jbpm事务整合问题

1楼
xunclapton 发表于:2010-9-10 21:31:21
 按照手册中整合了jbpm,可以运行,但是测试发现事务没有整合到一起

比如用spring声明了 OrderServiceImp 中takeOrder采用事务管理,如果手工地抛出一个runtimeException,只有我自己管理的数据库事务会回滚,但jbpm的事务没有被回滚。


比如执行下面的代码,会发现order1并没有被提交,符合期望
但在数据库中可以看到这个processInstance被创建,而且执行正常,相关history表中也有相应记录
而我期望的是jbpm的数据要和业务的数据统一提交或回退
public class OrderServiceImp extends HibernateDaoSupport implements OrderService{
    public void takeOrder(Order order1, Order order2) {
        getHibernateTemplate().save(order1);
        
        ProcessInstance processInstance = executionService
                .startProcessInstanceByKey("StateSequence");
        Execution executionInA = processInstance.findActiveExecutionIn("a");
        processInstance = executionService.signalExecutionById(executionInA
                    .getId());

        if(true)
            throw new RuntimeException();

        getHibernateTemplate().save(order1);
    }
}
2楼
xyz20003 发表于:2010-9-11 8:31:13
 需要使用aop,将tx配置在takeOrder()方法这一层,而不是让hibernateTemplate自动管理,为每次save()打开一个tx。
3楼
xunclapton 发表于:2010-9-12 0:55:09
是在takeOrder上配置了tx的,所以才很疑惑
最后发现是犯了一个低级错误,初始化executionService这些jbpm service时重新new了一个ApplicationContext,这样就搞了两个容器,当然事务不能整合了
第一次用spring,汗。。。
分享到:
评论

相关推荐

    spring与JBPM整合ppt

    3. **整合原理**:Spring与JBPM的整合主要基于Spring的bean管理和事务管理能力。通过Spring的ApplicationContext,我们可以配置和管理JBPM的相关组件,如流程引擎、数据源、事务管理器等。同时,Spring的AOP可以用来...

    jbpm4.3与spring整合

    2. **调整`applicationContext.xml`**:`applicationContext.xml`是Spring的核心配置文件,在这里我们需要配置数据源、事务管理器以及JBPM的相关组件。示例代码如下: ```xml <bean id="dataSource" class="org....

    Spring Jbpm流程整合1

    总的来说,Spring与JBPM的整合涉及到环境配置、流程设计、依赖管理和事务集成等多个方面。通过精心的配置和设计,开发者可以利用这两个强大的工具构建出灵活、高效且易于维护的业务流程管理系统。

    spring3.2+jBPM6整合实例

    8. **异常处理和事务管理**:由于Spring和jBPM都支持事务管理,确保在异常发生时能够正确回滚事务是非常重要的。配置Spring的事务管理器,并确保与jBPM的事务配置相协调。 9. **规则集成**:jBPM集成了Drools规则...

    spring与jbpm的集成包(符集成方法)

    Spring 和 JBPM 集成是一项关键的技术任务,它允许开发者在基于 Spring 的应用程序中无缝地集成业务流程管理(BPM)功能。JBPM 是一个开源的 BPM 解决方案,提供工作流服务、流程建模、执行和监控等功能。下面我们将...

    JBPM4.4+spring+ext整合

    通过JBPM4.4、Spring和EXT的整合,可以构建出一个功能完善、易用性强的流程管理系统,不仅能够有效地管理业务流程,还能提供直观的用户界面,提升用户体验。这种整合方式在现代企业级应用中具有很高的实用价值。

    struts+hibernate+spring+jbpm智能工作流系统

    Struts、Hibernate、Spring 和 jBPM 是四个在企业级应用开发中广泛使用的开源框架,它们结合在一起可以构建出高效且灵活的智能工作流系统。下面将分别介绍这些技术及其在工作流系统中的作用。 **Struts** Struts 是...

    Jbpm4.4 整合Spring Hibernate4

    在这个版本中,Jbpm与Spring框架和Hibernate ORM工具进行了整合,实现了更加灵活和高效的企业级应用开发。 **1. Jbpm简介** Jbpm4.4是Jbpm系列的一个版本,它主要负责处理业务流程的建模、执行、管理和监控。它支持...

    JBPM5 整合Spring3经典案例

    - **事务管理**:Spring的事务管理器可以与JBPM的事务管理相结合,确保流程操作的原子性和一致性。 - **AOP集成**:Spring的AOP可以在流程执行的关键点添加拦截器,实现日志记录、权限检查等功能。 - **Bean管理**:...

    JBPM4与Spring整合例子代码

    将JBPM4与Spring进行整合,可以充分利用Spring的灵活性和JBPM4的流程管理能力,构建高效且可扩展的OA(Office Automation)工作流系统。 在"风中叶老师讲的JBPM4与Spring整合例子代码"中,我们可以了解到如何将这两...

    jbpm4整合struts2+spring2.5+hibernate3.3

    - **数据源管理**:Spring可以管理多种数据源,与Hibernate整合时,提供事务支持和Session工厂。 4. **Hibernate3.3**: - **ORM**:Hibernate将Java对象映射到数据库表,简化了数据库操作。 - **查询语言**:...

    jbpm4和spring整合例子

    近期网上有人介绍jBPM4与Spring整合的2种方式,但没有人贴出代码,闲着无聊写了个例子,源码见附件,在WEBLOGIC下运行正常,事务由spring控制http://ip:7001/Spring/helloWorld.do

    jBPM4与Spring整合的2种方式

    将jBPM4与Spring整合,可以充分利用Spring的依赖注入和管理能力,提升jBPM4的可维护性和灵活性。本文将详细介绍两种整合jBPM4与Spring的方法。 **方法一:基于Spring的Bean定义** 1. **配置jBPM4的数据源**:在...

    spring+hibernate+jbpm整合

    ### Spring + Hibernate + jBPM 整合知识点详解 #### 一、项目背景与整合目的 在企业级应用开发中,通常需要实现业务流程管理、数据持久化以及服务层等功能。Spring框架因其强大的依赖注入(DI)和面向切面编程...

    jbpm+spring配置

    【jbpm+spring配置】是将业务流程管理(Business Process Management, BPM)框架jbpm与企业级应用开发...通过对这个项目的学习,你可以深入理解jbpm的流程设计、Spring的整合技巧以及如何在企业应用中实现流程自动化。

    Spring整合JBPM、日志、数据库、ehcache的配置文件

    在这个场景中,我们关注的是如何将Spring框架与JBPM(Business Process Management,业务流程管理)、日志记录、数据库以及ehcache缓存系统进行整合。这些组件在实际应用开发中扮演着至关重要的角色。下面将详细阐述...

    jbpm4.3-spring2.5整合

    Jbpm通过Spring的IoC(Inversion of Control)容器来管理其bean,使得流程实例的创建、事务处理和异常管理等都可以由Spring来控制。这不仅简化了代码,还提高了系统的可测试性和可维护性。 在开始整合之前,你需要...

    jbpm4整合struts2+spring2[1].5+hibernate3.3

    - **IOC容器统一**:jbpm4有自己的IOC容器,但在与Spring集成时,我们通常会将jbpm4的服务迁移到Spring的IOC容器中,利用Spring的强大功能进行服务管理和事务处理。 - **Spring事务管理**:Spring提供了声明式事务...

Global site tag (gtag.js) - Google Analytics