Jbpm 4 撤回 、强制完成

掌握jbpm工作流:流程图状态动态展示指南 jbpm是基于Java的开源工作流管理系统,它允许企业和开发者创建、执行和监控业务流程。该系统以轻量级、灵活和可扩展的特点著称,在企业级应用中有着广泛的应用。它支持业务流程模型和业务规则模型,允许业务分析师和开发人员更好地协作。在了解流程定义的核心要素时,流程图的构建是一个不可或缺的环节。流程图是表达工作流程的一种图形化工具,它以图形化的方式展示了从开始到结束的整个业务过程。在jbpm中,流程图的构建是通过一系列图形化的元素来实现的,包括但不限于:开始节点(Start Events) 阅读详情

1. 本人之前未用过jbpm    2. 此时采用4.2版本

问题描述: 节点2向节点3提交一任务,在节点3尚未处理前,怎么将任务撤回(回到节点2).

考虑:

     当前的活动节点已经是节点3;

     方式1:删除当前的任务(3的),更改已完成节点的任务状态为open

           首先删除需要撤销的任务实例及其与此任务实例相关的所有工作流实例. 其次修改当前任务实例的状态,即将张三的已经办理完毕的节点2对应的TaskInstance的状态更改为待办状态.

           但此时,删除任务老出异常,本人对此种操作的方法不甚明了.


             a 、

                commandService.execute(new DeleteTaskCmd(taskId, true));

                 b、    

                      task.setState(task.STATE_OPEN);

                      taskService.saveTask(task);




         方式2:采用动态路由机制(动态加转移--Transition)

                 此种方法当我是创建转移,然后完成节点3任务,转到节点2.


                 source.createOutgoingTransition();
                  ... ...

                 ts.completeTask(t.getId(),outcome);--此处调用完成了,但未触发目标节点的任务数据生成


没用过就是麻烦,调试N次,终于按方式2实现功能;(百度里发一下,竟然也没人回)


*******取执行实例executionImpl时,应该需要先open"环境" **,不然没办法以此再来获取当前的活动。如果在执行过程中,调用自己

的方法(比如自己写sql查询任务),有可能会影响事务的提交。所以我尽量采用他们自己的service。利用此方法2去撤回到原节点后,可以针对

此任务赋权限(将之前的操作人赋给它)。


         总觉得方式1的实现才是正统的,应该api帮助我们去处理相关的细节。而且用方法2的话,当遇到会签时,撤回逻辑还要进一步的完善,相当


的麻烦。如果方法1能够实现,估计会比较通用。


在实现流程的强制完成功能时,我还是用的动态路由的原理,创建当前节点到结束结点的转移(活动节点可以通过流程定义去find出来)。

国产系统迁移实战:在银河麒麟V10上搞定Wine32位支持,让老Windows软件跑起来 本文详细介绍了在银河麒麟V10操作系统上构建Wine32位支持的全过程,帮助用户解决Windows应用迁移难题。从系统架构差异分析到Wine环境配置,再到实战应用部署与优化,提供了一套完整的解决方案,确保老Windows软件在国产系统上稳定运行。 阅读详情

相关推荐

ESP32水墨屏日历实战:低功耗自动更新与HTTPS数据解析

本文详细介绍了ESP32水墨屏日历项目的开发实践,重点讲解了低功耗自动更新与HTTPS数据解析的实现方法。通过ESP32的自动休眠功能和水墨屏的零功耗特性,结合HTTPS请求安全获取网络数据,实现了高效节能的桌面日历应用。项目代码开源,适合物联网开发者参考。

xx56789的博客 777

说说在 jBPM 工作流中如何实现【撤销】功能

撤销(Withdraw):针对当前用户已办理的任务(历史任务),重置回待办状态。 撤销一般发生在以下场景中:当用户办理完任务后,发现办理的任务存在业务错误或者觉得下一节点办理人需要重新选择,那么这时就需要撤销任务啦 O(∩_∩)O哈哈~ 注意:如果下一节点办理人已完成任务或者流程可能已经流转了若干节点(甚至走了分支),那么这时执行【撤销】操作,就需要对业务进行很大的补偿。是否必要这么做,需要权...

读万卷书,行万里路 1374

震坤行:企业 MRO 物料标准化革新之路

那产生这些问题的原因是什么呢?要想解决此问题,企业高层必须下定决心对历史数据进行梳理,并善于利用信息技术,融合企业管理的流程机制,建立起一套适合企业发展的物料标准化管理体系,循序渐进,逐步规避由物料不规范带来的管理问题,最终使得这套标准化体系能够满足企业多元化业务发展需要。国内某电子制造头部企业原先内部物料无对应分类,仅有物料编码,给企业对采购、领料的过程中造成极大的不变,基于震坤行的目录结构,预测物料对应的分类,预测准确率达到80%以上,再辅以人工校正,最终搭建起一套标准的目录体系,如图2.2所示。

carson99的博客 421

JBPM4.4 撤销任务/回退任务/自由流

JBPM4.4 撤销任务/回退任务/自由流 http://paomo30000.iteye.com/blog/768033 转处: 博客分类:  JAVA JBPMjunitXML活动 JBPM4.4任务撤销操作/回退操作/自由流 详细操作看注释。 操作示意图  task.jpdl.xml  Xml代码   <?xml version=...

lvdong5830的专栏 337

ADAS系统架构与核心功能解析:从感知到执行的智能驾驶方案

高级驾驶员辅助系统(ADAS)是现代汽车智能化的核心技术,其本质是通过传感器融合、算法决策与车辆控制,构建一个“感知-决策-执行”的闭环系统。在技术原理上,ADAS依赖摄像头、毫米波雷达、激光雷达等多源传感器进行环境感知,并通过深度学习模型与融合算法(如卡尔曼滤波)构建精准的环境模型。其技术价值在于提供主动安全冗余与驾驶舒适性,核心应用场景包括自动紧急制动(AEB)、自适应巡航(ACC)及车道保持辅助(LKA)等。随着传感器成本下降与域控制器算力提升,ADAS正从高端配置向主流车型快速普及,并逐步向高阶导航

weixin_31062533的博客 414

AD学习笔记(一)基础认识

文章目录AD学习笔记第一讲 AD基础认识一、两库两图(分别对应下图)1、PCB图(pcbdoc)2、原理图(schdoc)3、原理图库(schlib)4、PCB库(pcblib)二、封装1、DIP封装2、LQFP封装三、绘制整体流程1、建立工程(PrjPcb)2、建立两库两图并保存整个工程(五次)3、从库中提取绘制原理图4、原理图导入pcb图5、根据原理图布线6、pcb图交由工厂打板 AD学习笔记 第一讲 AD基础认识 一、两库两图(分别对应下图) PCB图(pcbdoc) 原理图(schdoc) PCB库

qq_52465473的博客 6686

JBPM4.4 撤回功能中清除历史痕迹的方法

JBPM撤回功能中清除历史痕迹的方法 (本文针对 的是JBPM4.4) JBPM

花洛云非的小屋 2724

用matlab编程求矩阵的极大无关组,向量组极大无关组表示问题

已知向量组T:Eqn11.gif (3.16 KB, 下载次数: 1)2013-10-21 19:19 上传.(1) 求向量组T的秩,并判断向量组T的相关性;(2) 求T的极大线性无关组;(3) 将其余的向量用所求的极大线性无关组线性表示。程序:>> A=[1 1 3 2;-1 1 -1 3;5-2 8 9;-1 3 1 7]>> r=rank(A)>> A1=...

weixin_35094083的博客 7384

完整的JBPM撤回功能的Command示例

研p import java.util.HashMap; import java.util.List; import java.util.Set; import org.hibernate.Session; import org.jbpm.api.Execution; import org.jbpm.api.ExecutionService; import org.jbpm.

花洛云非的小屋 2392

重构工业交互体验:响应式数据可视化大屏解决方案

从智慧园区到数据中心,从水务监控到风力发电场景,HT 通过 2D/3D 组态技术与响应式布局机制,让数据以更灵活、更精准的方式呈现场景动态 —— 这正是 HT 技术在工业可视化领域的核心价值。例如,在智慧楼宇监控系统中,HT 引擎可实时渲染建筑结构、设备状态与数据流,同时确保画面在不同尺寸屏幕上的一致性。以某工业数据中心大屏为例,HT 通过暗红色主调搭配工业元素,结合粉色与黄色点缀,打破传统深蓝色大屏的视觉定式,同时通过矢量图形确保色彩在不同亮度下的辨识度 —— 这正是 HT 技术在视觉设计上的独特优势。

Hightopo的博客 888

第二十一:Python接口自动化-处理Json数据

【代码】第二十一:Python接口自动化-处理Json数据。

欢迎来到本博客! 111

JBPM与软件架构模式设计之命令模式

 前面我们介绍了JBPM的长事务设计,其中用到了职责链模式和命令模式,其中职责链模式我们已经介绍过了,今天我们来看看JBPM是怎样使用命令模式的。命令模式定义将请求封装成一个对象,使你可以使用不同的请求对客户端进行参数化;对请求排队和记录请求队列,并支持对请求的撤销操作。命令模式UML类图命令模式代码示例 package org.jbpm.pvm.internal.svc;public

无风听海 971

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

项目中的流程及类似业务的设计模式总结

说到业务流程,可能是我做过的项目中涉及业务最多的一个方面了。除了在流程设计之外,在一些考核系统、产业审批、还有很多地方,都用到相似的设计思路,在此一并总结一下。再说到模式,并不是因为流行才用这个词,而是因为这里总结的东西确实只能是个参考,是我解决问题的处理方式与思路,当然几乎相同的项目中,有时我用到很多相同的代码,所以又可以看到是一个原型系统。 为什么我一般不用工作流产品?因为它包括一部分定义的东西还不全,又包含了一部分业务的东西,也不全,调度算法也不全,一些特殊的统计要求也不好弄,相反一些画图,启动啊,

herriman的博客 8483

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

项目中的流程及类似业务的设计模式总结(已配图)

说到业务流程,可能是我做过的项目中涉及业务最多的一个方面了。除了在流程设计之外,在一些考核系统、产业审批、还有很多地方,都用到相似的设计思路,在此一并总结一下。再说到模式,并不是因为流行才用这个词,而是因为这里总结的东西确实只能是个参考,是我解决问题的处理方式与思路,当然几乎相同的项目中,有时我用到很多相同的代码,所以又可以看到是一个原型系统。 什么什么?不是已经有那么多BP...

herriman的博客 1202

Activiti7学习(基础篇)& 学习链接

工作流(Workflow),就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之 间按照某种预定义的规则自动进行传递文档、信息或任务的过程,从而实现某个预期的业务目标,或者 促使此目标的实现”。

pscool的博客 736

另一种JBPM实现互斥撤回任务的例子

一个JBPM实现互斥撤回任务的例子    关键字:   一节点多任务实例             有一个需求是这个样子的:员工请假,填写好请假单后,提交申请.上级主管会有一个审核请假的任务,同时申请人有一个撤回的任务.这这两个任务互斥,也就是说两个任务有一个先执行.另一个任务取消.        曾经看过网

xint13的专栏 923

跟我学JBPM4之State、Decision 、Task活动

本文电子版文档下载  State、Decision 、Task活动详解: State表示一个等待状态。当流程实例执行到state节点时会暂停下来(处于等待状态),流程的执行会在外部触发器被调用之前一直等待(会暂停) Decision条件判断节点,表示在多条路径中选择一条。一个 decision 活动拥有很多个传出的转移。流程的执行到达一个 decision 活动时,会自动进行计算来决定采用哪

ocean1010的专栏 1793

jBPM4.4:TaskService任务服务

TaskService的主要目的是提供对任务列表的访问途径。 例子代码会展示出如何为id为johndoe 的用户获得任务列表 List<Task> taskList = taskService.findPersonalTasks("johndoe");   一般来说,任务会对应一个表单,然后显示在一些用户接口中。 表单需要可以读写与任务相...

cfy_zybing的专栏 616

jBPM 3 流程模型

以前写的。 jBPM 流程模型简介 面向图的程序设计 jPDL ( jBPM Process Definition Language )是建立在 JBoss jBPM 框架之上的一个流程语言。它的核心功能被封装成了一个简单的 java 库,用来管理流程定义和流程实例执行的运行时环境,可以很方便的嵌入到我们的应用中。 面向图的程序设计( Graph Oriented Programming

windsome的专栏 1779

jBPM4.4:完成任务的几种方法

开始了一个Process,需要完成任务,完成任务有以下几种方法:   1. ExecutionService来完成任务:     如果得到了正在执行的Execution(可以通过好几种途径获取),可以通过ExecutionService来完成这个Execution     executionService.signalExecutionById(executionI...

cfy_zybing的专栏 237

应用jBPM4解决中国特色的流程需求

http://www.infoq.com/cn/articles/jbpm4-process-requirement 1. jBPM4的特点 jBPM是JBoss众多开源项目中的一个工作流开源项目,也是目前应用最广泛的工作流项目。在今年的7月10号,JBoss jBPM团队正式发布了jBPM4的正式版。jBPM4完全基于流程虚拟机(PVM)的机制,对核心引擎进行了重新设计,而PVM的引...

yuanye218 360

JBPM4-回退 功能实现

JBPM4-回退 功能实现1、JBPM4-回退 1、JBPM4-回退 回退指的是用户主动回退到当前任务的上一流程节点(上一步骤)。

weixin_44462773的博客 614

jbpm4.4 实现撤回功能

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34233618的博客 241

JBPM4删除流程实例

文章内容如题 JBPM4 提供了这样的接口,代码相对简单: processEngine=new  org.jbpm.api.Configuration().buildProcessEngine();   ExecutionService executionService =           processEngine.getExecutionService();       exe

yangyi1018的博客 898
上一篇: JBPM 4.* 基本
下一篇: get与post区别
xiaojunjava
博客等级 码龄21年 7粉丝 28原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值