Activiti 手工任务(manualTask)
作者:Jesai
前言:
手工任务就是一个自动执行的过程。手动任务几乎不在程序中做什么事情,只是在流程的历史中留下一点痕迹,表明流程是走过某些节点的。而且这个任务是无法用taskservice查询到的。
Activiti官方说明:
手动任务定义了 BPM引擎之外的任务。用来对那些需要人来完成的工作进行建模,引擎不需要知道他是系统还是 UI接口。
对引擎而言,手动任务是作为直接通过的活动处理的,流程执行到此会自动继续流程的执行
所以这个流程其实没有什么好说的。就是一个直接通过的任务。可以使用它来自动执行一些可以直接通过的任务。
流程设计:
设置一个监听类:
1 /** 2 3 * 4 5 */ 6 7 package light.mvc.workflow.serviceTask; 8 9 10 11 import org.activiti.engine.delegate.DelegateExecution; 12 13 import org.activiti.engine.delegate.JavaDelegate; 14 15 16 17 /** 18 19 * 20 21 * 项目名称:lightmvc 22 23 * 类名称:ServiceTask 24 25 * 类描述: 26 27 * 创建人:邓家海 28 29 * 创建时间:2017年6月4日 下午6:18:11 30 31 * 修改人:deng 32 33 * 修改时间:2017年6月4日 下午6:18:11 34 35 * 修改备注: 36 37 * @version 38 39 * 40 41 */ 42 43 44 45 public class TestRunningTask implements JavaDelegate{ 46 47 48 49 //重写委托的提交方法 50 51 @Override 52 53 public void execute(DelegateExecution execution) throws Exception { 54 55 System.out.println("TestRunningTask is running!"); 56 57 } 58 59 60 61 }
流程源码:
1 <?xml version='1.0' encoding='UTF-8'?> 2 3 <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/processdef"> 4 5 <process id="process" isExecutable="true"> 6 7 <startEvent id="sid-8D52A572-DD68-4640-BCEE-AA46FD19F535" /> 8 9 <manualTask id="sid-B57FA289-A98B-45B8-8550-211ED155778E" name="手工任务"> 10 11 <extensionElements> 12 13 <activiti:executionListener event="start" class="light.mvc.workflow.serviceTask.TestRunningTask" /> 14 15 </extensionElements> 16 17 </manualTask> 18 19 <endEvent id="sid-DF898F06-5F35-4C64-B84D-6A405ADECA91" /> 20 21 <sequenceFlow id="sid-BD48A7F5-D206-4E76-AB78-0437FBDC5834" sourceRef="sid-B57FA289-A98B-45B8-8550-211ED155778E" targetRef="sid-DF898F06-5F35-4C64-B84D-6A405ADECA91" /> 22 23 <sequenceFlow id="sid-6F9CC662-16AB-4058-BA4A-2A0D3D99C185" sourceRef="sid-8D52A572-DD68-4640-BCEE-AA46FD19F535" targetRef="sid-B57FA289-A98B-45B8-8550-211ED155778E" /> 24 25 </process> 26 27 <bpmndi:BPMNDiagram id="BPMNDiagram_process"> 28 29 <bpmndi:BPMNPlane bpmnElement="process" id="BPMNPlane_process"> 30 31 <bpmndi:BPMNShape bpmnElement="sid-8D52A572-DD68-4640-BCEE-AA46FD19F535" id="BPMNShape_sid-8D52A572-DD68-4640-BCEE-AA46FD19F535"> 32 33 <omgdc:Bounds height="30.0" width="30.0" x="233.75" y="102.0" /> 34 35 </bpmndi:BPMNShape> 36 37 <bpmndi:BPMNShape bpmnElement="sid-B57FA289-A98B-45B8-8550-211ED155778E" id="BPMNShape_sid-B57FA289-A98B-45B8-8550-211ED155778E"> 38 39 <omgdc:Bounds height="80.0" width="100.0" x="375.0" y="77.0" /> 40 41 </bpmndi:BPMNShape> 42 43 <bpmndi:BPMNShape bpmnElement="sid-DF898F06-5F35-4C64-B84D-6A405ADECA91" id="BPMNShape_sid-DF898F06-5F35-4C64-B84D-6A405ADECA91"> 44 45 <omgdc:Bounds height="28.0" width="28.0" x="630.0" y="103.0" /> 46 47 </bpmndi:BPMNShape> 48 49 <bpmndi:BPMNEdge bpmnElement="sid-BD48A7F5-D206-4E76-AB78-0437FBDC5834" id="BPMNEdge_sid-BD48A7F5-D206-4E76-AB78-0437FBDC5834"> 50 51 <omgdi:waypoint x="475.0" y="117.0" /> 52 53 <omgdi:waypoint x="630.0" y="117.0" /> 54 55 </bpmndi:BPMNEdge> 56 57 <bpmndi:BPMNEdge bpmnElement="sid-6F9CC662-16AB-4058-BA4A-2A0D3D99C185" id="BPMNEdge_sid-6F9CC662-16AB-4058-BA4A-2A0D3D99C185"> 58 59 <omgdi:waypoint x="263.75" y="117.0" /> 60 61 <omgdi:waypoint x="375.0" y="117.0" /> 62 63 </bpmndi:BPMNEdge> 64 65 </bpmndi:BPMNPlane> 66 67 </bpmndi:BPMNDiagram> 68 69 </definitions>
部署,执行开始任务,然后直接完成。
控制台输出
TestRunningTask is running锛?
Activiti交流QQ群:634320089