org.jbpm.JbpmException: task node does not have leaving transition 'reject'
原因:没有找到名字是'reject'的transition.但是processdefinition.xml文件里面确实有这个transition的,
<transition name="reject" to="d1">
<action class="com.xxx.xxx.xxx" />
</transition>
为什么呢?
因为我再第一次编写processdefinition.xml的时候我的这个transition是中文的name="拒绝",并且我已经吧这个工作流发布到数据库中了,因为我查数据库表:jbpm_transition 发现里面的name是以前的"拒绝",难怪会提示找不到transition 'reject',因为数据库中根本就没有name=reject的transition
所以我就用新的processdefinition.xml重新发布了一次工作流到数据库中.再次运行,还是报同样的错.......
这次我再看代码,发现处理任务的代码:
List<TaskInstance> list = context.getTaskList(actorId);
for(TaskInstance ti : list ){
if(pas){
ti.end("approve");
}else{
ti.end("reject");
}
}
我觉得问题再List<TaskInstance> list = context.getTaskList(actorId);
这一句,我查数据库,发现再jbpm_taskinstance 表中分配给actorId的,并且isopen='1'的有4条,这是因为我上次报错的程序运行了4次,每次流程都停留再这个节点没有走下去.因为有多条,所以找出来的第一条对应的任务就有可能没有对应的name='reject'的transition,这里有是循环,每条记录都会来一次ti.end("approve")或者ti.end("reject"); 所以会报原来一样的错.把jbpm_taskinstance 表中,所有分配给我要找的actorId记录的isopen都改为'0'.
再次运行,正确,问题解决.
PS:我也是第一次运行JBPM发现这个错,再网上找答案,只看到问题,没看到答案,所以把自己的解决方法写出来.希望对其它人有帮助.
分享到:
相关推荐
jbpm jbpm4.3.jar DDDDDDDD
jbpm4.3-src.zip是一个包含jbpm 4.3版本源代码的压缩包,对于开发者来说,这是一个宝贵的资源,可以深入理解jbpm的工作原理,从而更好地利用它进行业务流程管理(BPM)系统的开发和定制。jbpm是一个开源的工作流管理...
【JBPM4 Java源代码分包详解】 JBPM4是一个流行的开源工作流管理系统,它提供了一整套用于设计、执行和管理业务流程的工具。在深入研究JBPM4的源代码时,我们可以从其包结构中了解到框架的核心功能和设计理念。 1....
1. `org.jbpm.api.JbpmException: database was not clean after test`: 这个异常通常出现在单元测试环境中,原因是测试过程中流程未完成,但尝试删除流程定义。为了解决这个问题,确保在每个测试用例结束后,正确...
jeecg-jbpm-framework 20130202.zipjeecg-jbpm-framework 20130202.zipjeecg-jbpm-framework 20130202.zipjeecg-jbpm-framework 20130202.zipjeecg-jbpm-framework 20130202.zipjeecg-jbpm-framework 20130202....
jBPM-JPDL(jBPM Process Definition Language)是jBPM用于描述业务流程的语言,类似于XML格式,用于定义工作流的各个步骤和规则。JPDL允许开发者定义任务、状态转换、事件处理以及复杂的流程逻辑。在jbpm-jpdl-src....
JBPM,全称为Java Business Process Management,是一款开源的工作流管理系统,专为企业的业务流程自动化而设计。它提供了全面的工作流解决方案,包括流程定义、执行、监控以及管理,从而帮助企业优化业务流程,提高...
### 工作流与JBPM开发实例精解 #### 一、引言 在软件开发领域,特别是企业级应用开发中,工作流管理扮演着极其重要的角色。它可以帮助组织优化业务流程,提高工作效率。JBPM作为一款开源的工作流引擎,为开发者...
jbpm3.1中文文档 .chm 博文链接:https://xinlingwuyu.iteye.com/blog/213351
标题中的"JBPM4.4所需要的包.rar"表明这是一个与JBPM 4.4版本相关的压缩文件,包含了一些必要的库和组件。JBPM(Java Business Process Management)是一个开源的工作流和业务流程管理系统,用于设计、执行和管理...
jBPM 4.4 API Packages org.jbpm.api the jBPM API, Start by creating a Configuration, build a ProcessEngine from that, and then you can find the ...org.jbpm.api.task interfaces related to the TaskService
【jbpm-5.1.0.Final-bin】是一个包含jbpm5.1.0版本所有必需组件的压缩包,适用于进行基于Java的企业流程管理(Business Process Management, BPM)开发。该版本提供了全面的工具和服务,使开发者能够设计、执行和...
2017年jBPM 正式发布了全新的 7版本。jBPM 是一个完全开源的业务流程管理(BPM)和案例管理解决方案。它支持流程和案例的完整生命周期,从编写工具到执行一直到监控和管理。 在核心引擎之上,提供了许多功能和工具来...
JBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sql
jbpm学习笔记主要涵盖了jbpm(Java Business Process Management)的多个方面,包括Signavio的使用和配置、jBPM数据库的安装、Graphical Process Designer(GPD)的安装以及jBPM在Eclipse环境中的配置。以下是这些...
jbpm-3.1.2.zip 文件包含了 jBpm 的一个重要版本——jBpm 3.1.2,这是一个开源的工作流管理系统,专为构建灵活且可扩展的业务流程解决方案而设计。jBpm 提供了一种方式,使得开发者能够用简单而强大的语言来表达业务...
【jbpm-4.4.zip part03】这个压缩文件是关于jbpm 4.4版本的组成部分,jbpm(Java Business Process Management)是一个开源的工作流管理系统,它提供了业务流程建模、部署、执行和监控的功能。jbpm 4.4是该系统的一...
jbpm3是一款基于Java的企业级工作流管理系统,它主要用于实现业务流程自动化,提供了一套完整的工作流解决方案。这个“jbpm3中文文档.rar”压缩包包含了一份关于jbpm3的中文指南,对于学习和理解jbpm3的功能、设计...