TaskService的常用方法:
TaskService是一个接口,他的一个常用的实现类是TaskServiceImpl。它的常用的方法有:
(1): String saveTask(Task task);//Saves the given task to persistent storage,return the taskId
(2): Task getTask(String taskId);//根据taskId查找任务
(3): void assignTask(String taskId, String userId);//assigns this task to the given assignee
(4): void takeTask(String taskId, String userId);//当执行了改方法后,JBPM将会阻止组当中的其他成员再使用改任务,而反过来,如果想把据为己有的任务再放回组当中,则可以如下调用taskService.assignTask(taskId, null);
(5): void completeTask(String taskId);//完成一个任务
(6): void completeTask(String taskId, Map<String, ?> variables);//完成一个任务,并设置相应的流程变量
(7): void completeTask(String taskId, String outcome);//完成任务,并指定一个向外的流向
(8): void deleteTask(String taskId);//删除一个任务,但保留历史信息
(9): void deleteTaskCascade(String taskId);//删除一个任务,包括历史信息
(10): List<Participation> getTaskParticipations(String taskId);//返回一个任务的参与者集合
(11):TaskQuery createTaskQuery();//建立一个查询的任务
(12):List<Task> findPersonalTasks(String userId);
(13):List<Task> findGroupTasks(String userId);
(14):void setVariables(String taskId, Map<String, ?> variables);//设置任务变量,好像和Execution的变量是一样的
(15):Object getVariable(String taskId, String variableName);//获得流程变量
(16):Set<String> getVariableNames(String taskId);//的到所有的变量集合
(17):Set<String> getOutcomes(String taskId);
TaskQuery的常用方法;
TaskQuery是一个接口,包含了任务查询的常用方法:
(1):TaskQuery assignee(String userId);//通过指定的人查找任务
(2):TaskQuery unassigned();//返回未被指派的任务,即JBPM4_TASK表中ASSIGNEE_字段null
(3):TaskQuery candidate(String userId);
(4):TaskQuery executionId(String executionId);//通过指定的流程实例Id查找所有任务
(5):TaskQuery processInstanceId(String processInstanceId);
(6):TaskQuery processDefinitionId(String processDefinitionId);//查找一个流程定义底下的所有任务
(7):TaskQuery activityName(String activityName);//根据指定的流程节点查找该处的所有任务
(8):TaskQuery page(int firstResult, int maxResults);//分页查找任务
(9):TaskQuery orderAsc(String property);//排序方法,property是TaskQuery的成员
(10):TaskQuery orderDesc(String property);
(11):long count();//得到记录总数
(12):List<Task> list();//返回任务集合
(13):Task uniqueResult();
ExecutionService的常用方法:
ExecutionService是一个接口,包含了流程实例方面的大量操作
(1):ProcessInstance startProcessInstanceById(String processDefinitionId);//通过流程定义Id开启一个新的流程实例
(2):ProcessInstance startProcessInstanceById(String processDefinitionId, Map<String, ?> variables);//开启一个流程实例,Map集合是设置流程变量之用,和taskService.setVariables(String executionId, Map<String, ?> variables)的效果一致。ExecutionService中还包含很多开启流程的方法,但常用的基本就这两个
(3):Execution findExecutionById(String executionId);
(4):ProcessInstance findProcessInstanceById(String processInstanceId);
(5):ProcessInstanceQuery createProcessInstanceQuery();//创建一个流程实例的查询方法
(6):void setVariable(String executionId, String name, Object value);//设置一个全局的变量,即流程变量
(7):void setVariables(String executionId, Map<String, ?> variables);
(8):Object getVariable(String executionId, String variableName);//根据流程Id得到一个流程变量
(9):void endProcessInstance(String processInstanceId, String state);
(10):void deleteProcessInstance(String processInstanceId);//删除一个流程实例,但保留历史
(11):void deleteProcessInstanceCascade(String processInstanceId);//删除一个流程实例,同时删除历史信息
ProcessInstanceQuery的常用方法
ProcessInstanceQuery是一个接口,包含了流程实例的查询操作
(1):ProcessInstanceQuery processDefinitionId(String processDefinitionId);//根据流程定义的ID查找所有的实例
(2):ProcessInstanceQuery processInstanceId(String processInstanceId);//根据流程实例的ID查找,返回接口肯定只有一个
(3):ProcessInstanceQuery orderAsc(String property);
(4):ProcessInstanceQuery orderDesc(String property);
(5):ProcessInstanceQuery page(int firstResult, int maxResults);//分页查询
(6):List<ProcessInstance> list();//返回记录的集合
(7):ProcessInstance uniqueResult();//返回唯一记录
(8):long count();//返回总记录
分享到:
相关推荐
### JBPM4 常用表结构及其说明 JBPM4是JBPM(Java Business Process Model)的一个版本,主要用于提供业务流程管理的功能。它通过一组数据库表来支持工作流的执行与跟踪。本文将详细介绍JBPM4中的常用表结构及其...
Jbpm4常用操作 Jbpm4是Java流程管理系统(Java Business Process Management System),它提供了一种基于工作流的方式来定义、执行和管理业务流程。下面是Jbpm4常用操作的详细说明: 一、流程定义 流程定义是Jbpm...
**jBPM4完整例子详解** jBPM4是一个企业级的工作流管理系统,它提供了强大的业务流程管理和工作流实现能力。这个"jBPM4完整例子"是一个基于SSH(Struts2、Spring、Hibernate)框架集成jBPM4.4的请假流程应用,非常...
### 工作流系统技术选型可行性分析:JBPM4与JBPM5 #### 一、引言 在数字化转型的背景下,工作流系统成为提高组织效率的关键技术之一。医院作为一个复杂的组织机构,其内部流程的优化对于提升服务质量至关重要。...
【JBPM4整理学习资料】是一份全面介绍JBoss企业级业务流程管理(Business Process Management,简称BPM)系统JBPM4的教育资源。该资料集合了API文档、安装配置指南、常见操作步骤、数据库表结构解析以及流程分支与...
【jbpm4整合SSH框架详解】 jbpm4是一款开源的工作流管理系统,它为企业提供了一种灵活、可扩展的方式来管理业务流程。SSH(Struts、Spring、Hibernate)是Java开发中最常用的三大框架,它们分别负责视图层、业务层...
(不常用) 3)decision 当需要在流程中根据不同条件来判断执行不同路径时,就可以用decision节点。两种方法:最简单的是在transitions里增加condition elements(条件),condition是beanshell script写的,它返回...
SSH集成JBPM4是一个关于将Spring、Struts2和Hibernate(SSH)这三大Java Web开发框架与Business Process Management System(BPM,业务流程管理系统)JBPM4整合的项目实例。SSH是Java领域常用的轻量级MVC框架组合,...
jbpm是一个开源的工作流引擎,可以处理复杂的业务流程自动化,而SSH是Java开发中常用的技术栈,提供了MVC架构、依赖注入和对象关系映射等功能。 在进行jbpm与SSH框架的集成时,首先要确保环境的正确搭建。这里以...
"Jbpm4.4 整合Spring Hibernate4" 指的是一个集成项目,其中JBPM(Job Business Process Management)版本4.4被整合到Spring框架和Hibernate ORM工具的环境中。JBPM是一个开源的工作流管理系统,用于处理业务流程的...
- **问题与疑问解答**:提供了一份FAQ列表,帮助解决常见问题。 #### 四、快速启动案例 - **调用Java服务**:演示如何通过脚本任务、Java处理器或自定义领域特定任务等方式调用Java服务。 - **使用脚本任务**:...
在"jbpm-常用的所有jar包"中,我们通常会看到一系列的jar文件,这些文件包含了jbpm框架运行所需的核心组件和依赖库。以下是一些主要的jar包及其功能: 1. **jbpm-flow.jar**:这是jbpm的主要流程引擎,包含了流程...
3. **集成IDE**:常用IDE如Eclipse或IntelliJ IDEA,可以通过插件集成jBPM开发工具,便于流程设计和调试。 **三、jBPM4.4流程建模** 1. **使用BPMN编辑器**:通过图形化界面设计流程图,包括任务、网关、事件等...
4. **jbpm.jpdl.oracle.sql**:Oracle数据库以其强大的企业级功能而著名,适用于大型企业应用。jbpm.jpdl.oracle.sql脚本专门设计用于在Oracle数据库上建立jbpm的数据结构,为在Oracle数据库上运行jbpm提供支持。 5...
主要讲解了JBPM的常用接口函数,和如何使用JBPM,个人感觉还行
SSH(Spring、Struts2和Hibernate)是Java Web开发中常用的三大框架,它们分别负责不同的职责。Spring作为全能型框架,提供了依赖注入、AOP(面向切面编程)、事务管理等功能,使得代码更加模块化和松耦合。Struts2...
2. **SSH2**:SSH2代表Spring、Struts和Hibernate的集成,是Java Web开发中的常用三层架构。Spring提供了依赖注入、AOP(面向切面编程)、事务管理等;Struts是MVC(Model-View-Controller)架构的实现,负责处理...
4. **启动与验证**:启动JBPM5服务,并通过提供的控制台或命令行工具验证是否安装成功。 #### 三、流程设计 在JBPM5中,流程设计是业务流程管理的核心部分。主要包括以下几个方面: 1. **建模**:用户可以通过...
4. **jbpm部署** 在jbpm实例中,流程定义文件(.bpmn或.bpmn20.xml)和相关的表单定义(.form)会被打包成一个.kjar文件,然后部署到jbpm服务器。部署可以通过jbpm的工作流管理控制台或者API进行。 5. **任务服务*...
4. **Oracle脚本(jbpm.jpdl.oracle.sql)**:Oracle数据库是企业级应用的首选,jbpm.jpdl.oracle.sql则包含了在Oracle环境中创建jbpm数据库架构的PL/SQL命令。在使用这个脚本之前,你需要确认Oracle数据库客户端工具...