activity 常用任务类型:
User Task:用户任务,需由用户(参与者、必须有办理人)来完成任务。
- Java Service Task:服务任务(无需参与者,程序自动完成),也称之为自动节点任务,当运行到该类型的任务节点的时候,会自动执行一个Java类(需实现一个接口JavaDelegate,并添加到监听器中)的一个方法。(发短信、处理数据等)
- Jave Receive Task:接收任务也称之为等待任务(无需参与者,程序自动完成),需手动来完成任务(调一个方法)
服务任务:
//服务任务的代理类:用来自动执行一段代码 public class MyServiceJavaDelegate implements JavaDelegate{ @Override //命令模式 public void execute(DelegateExecution execution) throws Exception { //do something //当节点走到这里的的时候,会自动调用这个方法,执行里面的逻辑,无需人工参与 System.out.println("服务节点(自动节点)正在执行"); } }
等待任务(接收任务)
等待任务没有具体的参与人。
流程的某个任务,是在程序里面运行的一部分。
比如,我们需要写一个业务保存用户业务,但保存该用户之前,需要走一段流程,在流程的某个节点,我才有资格保存该用户,而且保存完了之后,还有后面流程。在保存用户的逻辑的地方调用一个方法就行。
换句话说,该任务,就等着程序去调用他(某些业务操作后),之后,才能往下走。
//调用执行等待任务(一般是嵌入到程序的一段代码中):告知任务 @Test public void signalTask(){ //申明告知:告诉工作流,我程序已经处理完了,你继续走流程 runtimeService.signal("****"); //****任务执行对象ID }