工作流JBPM_day01:6-执行流程实例
工作流JBPM_day01:6-执行流程实例
执行流程
启动流程实例
查询任务列表
办理任务
向后执行一步
先部署流程定义在启动流程实例

Jbpm4_execution表表示正在执行的流程实例的的信息

查询个人任务列表


ProcessInstanceTest .java
import java.util.List; import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.ProcessInstance;
import org.jbpm.api.task.Task;
import org.junit.Test; public class ProcessInstanceTest {
private ProcessEngine processEngine = Configuration.getProcessEngine(); //部署流程定义
@Test
public void deplyProcessDefinition() {
processEngine.getRepositoryService()//
.createDeployment()//
.addResourceFromClasspath("cn/itcast/b_processinstance/test.jpdl.xml")//
.addResourceFromClasspath("cn/itcast/b_processinstance/test.png")//
.deploy(); }
// 启动流程实例
// jbpm4_execution
@Test
public void testStartProcessInstance() {
ProcessInstance pi = processEngine.getExecutionService().startProcessInstanceByKey("helloworld");
System.out.println("流程实例启动成功:id=" + pi.getId()//
+ ", state=" + pi.getState()// 状态
+ ", processDefinitionId=" + pi.getProcessDefinitionId());// 所使用的流程定义的Id
} // 查询个人任务列表
@Test
public void testFindMyPersonalTaskList() {
String userId = "张三";
//查询
// List<Task> list = processEngine.getTaskService().findPersonalTasks(userId);
//分页
List<Task> list = processEngine.getTaskService()//
.createTaskQuery()//
.assignee(userId)//
.page(0, 100)//
.list();
//显示
System.out.println("======= 【" + userId + "】的个人任务列表 ========");
for(Task task : list) {
System.out.println("id=" + task.getId()
+ ", name=" + task.getName()
+ ", assignee=" + task.getCreateTime()
+ ", createTime=" + task.getCreateTime()
+ ", executionId=" + task.getExecutionId());
}
} // 办理任务
@Test
public void testCompleteTask() {
String taskId = "140002";
processEngine.getTaskService().completeTask(taskId);
} // 向后执行一步
@Test
public void testNext() {
String executionId = "helloworld.140001";
processEngine.getExecutionService().signalExecutionById(executionId);
}
}
Execution与ProcessInstance说明

工作流JBPM_day01:6-执行流程实例的更多相关文章
- JBPM4.4_执行流程实例
1. 执行流程实例 1.1. 启动流程实例 说明:流程实例创建后,直接就到开始活动后的第一个活动,不会在开始活动停留. 1.1.1. 示例代码1:使用指定key的最新版本的流程定义启动流程实例 Pro ...
- JBPM工作流(五)——执行流程实例
概念: ProcessInstance,流程实例:代表流程定义的一次执行.如:张三昨天按请假流程请了一次假.一个流程实例包括了所有运行阶段,其中最典型的属性就是跟踪当前节点的指针,如下图. Execu ...
- JBPM学习(四):执行流程实例
概念: ProcessInstance,流程实例:代表流程定义的一次执行.如:张三昨天按请假流程请了一次假.一个流程实例包括了所有运行阶段,其中最典型的属性就是跟踪当前节点的指针,如下图. Execu ...
- JBPM工作流(八)——流程实例(PI)Process Instance
/** * 流程实例 * * 启动流程实例 * * 完成任务 * * 查询 * * 查询流程实例 * * 查询任务 * * 查询正在 ...
- Activiti第二篇【管理流程定义、执行任务和流程实例、流程变量】
上篇Activiti只是一个快速入门案例,这篇就讲定义.部署.查看任务等等的一些细节[涉及到的数据库表.对象等等]- 管理流程定义 管理流程定义主要涉及到以下的4张表: -- 流程部署相关的表 SEL ...
- JBPM4入门——6.流程实例的创建和执行
本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...
- oozie 完整流程实例
Oozie概述: Oozie是一个基于Hadoop工作流引擎,也可以称为调度器,它以xml的形式写调度流程,可以调度mr,pig,hive,shell,jar,spark等等.在实际工作中,遇到对数据 ...
- 工作流JBPM_day01:3-使用JBPM的API添加与执行流程
工作流JBPM_day01:3-使用JBPM的API添加与执行流程 流程定义画完得到压缩文件--->部署流程定义-->启动流程实例-->查询我的个人任务列表-->办理任务--& ...
- Activiti工作流学习(二)流程实例、执行对象、任务
一.前言 前面说明了基本的流程部署.定义,启动流程实例等基本操作,下面我们继续来学习流程实例.执行对象.任务. 二.流程实例.执行对象说明 整个Activiti的生命周期经过了如下的几个步骤: 1.流 ...
随机推荐
- 给class添加id封装
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- securecrt5序列号
securecrt5序列号 Name: Apollo InteractiveCompany: Apollo InteractiveSerial Number: 03-50-02 ...
- printf家族探秘
有一个函数,是我们从学习c语言就开始的第一天就接触的,那就是printf函数,可是这个家族的函数,带给我们的便利却不是一点半点,所以写一篇用法总结. 1.printf函数 格式化输出,可以输出八进制, ...
- java调用c库实例
java由于语言限制,不能使用char*作为返回值. 局部变量的字符串不能正常返回,vc可以正常接收,java不能接收. c语言 int __stdcall GetCharacterCodeJn(ch ...
- jfinal视频目录
目录-----------------------------------------------------------第一章 简介第二章 JFine2.0 maven demo第三章番外篇 JFi ...
- 纯CSS3实现漂亮的价格表样式代码
分享一款纯CSS3实现漂亮的价格表样式代码是一款常见的主机商发布产品价格信息页.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div id="main" ...
- wpf treeview中的两个事件
使用模板HierarchicalDataTemplate <HierarchicalDataTemplate x:Key="BookMarkTemplate" > &l ...
- at org.apache.hadoop.util.RunJar.main(RunJar.java:153)
关于手动编译hadoop入门例子WordCount并执行 之前做的例子都是用hadoop中已经编译好jar包来运行示例的但是这次想要手动编译个实例,练下手没想到还是遇到点了小困难 [root@cent ...
- ExtJs TreePanel 全选与反选
selectAll: function() { this.getRootNode().eachChild(function (child) { child.set('checked', true); ...
- EMC现场测试-EFT、ESD、Surge和场辐射
EMC测试主要进行了4项: 1. ESD 采用静电枪测试,接触电压±6KV,检测了整个箱体和内部可见金属部分: 空气放电正负8KV,检测了箱体及内部金属部分(如板卡壳体),特别检测了220V电源插头及 ...