版权声明:转载注明出处就OK的说,有些东西会转载,都会注明的说= =如果有冒犯麻烦见谅 https://blog.csdn.net/Pan1458689676/article/details/82728835

IntermediateEvent组件

  • IntermediateEvent组件

    • Demo1【Timer+Signal+Message】
    • Demo2【Compensation+None】
    • CompensationThrowingEvent注意事项【详细可以参考官网】

IntermediateEvent分为抛出事件与捕获事件。基本与边界事件用法类似。依然以信号,消息,错误,时间为载体。具体分为六种。功能的话基本上直接翻译就大致明白。

官网上也没有详细的描述,这里主要以两个demo做讲解。

Demo1【Timer+Signal+Message】

  • 并行网关前三行为测试信号抛出中间事件与信号捕获中间事件。

ServiceTask绑定如下【两个都绑定了如下委托执行类】

ServiceTask

public class ServiceTask implements JavaDelegate {@Overridepublic void execute(DelegateExecution execution) {System.out.println("ServiceTask");}
}
  • 并行网关第四行为测试消息捕获中间事件。

ServiceTask绑定如下

ServiceTask

public class Message implements JavaDelegate {@Overridepublic void execute(DelegateExecution execution) {System.out.println("Message");}
}
  • 并行网关之后为测试事件捕获中间事件。

ServiceTask绑定如下

ServiceTask

public class Over implements JavaDelegate {@Overridepublic void execute(DelegateExecution execution) {System.out.println("Over");}
}

XML代码

<?xml version="1.0" encoding="UTF-8"?>
<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/test"><signal id="signalmsg" name="signalmsg"></signal><message id="msg" name="msgName"></message><process id="intermediate" name="My process" isExecutable="true"><startEvent id="startevent1" name="Start"></startEvent><parallelGateway id="parallelgateway1" name="Parallel Gateway"></parallelGateway><sequenceFlow id="flow1" sourceRef="startevent1" targetRef="parallelgateway1"></sequenceFlow><intermediateThrowEvent id="signalintermediatethrowevent1" name="SignalThrowEvent"><signalEventDefinition signalRef="signalmsg"></signalEventDefinition></intermediateThrowEvent><intermediateCatchEvent id="signalintermediatecatchevent1" name="SignalCatchEvent"><signalEventDefinition signalRef="signalmsg"></signalEventDefinition></intermediateCatchEvent><intermediateCatchEvent id="signalintermediatecatchevent2" name="SignalCatchEvent"><signalEventDefinition signalRef="signalmsg"></signalEventDefinition></intermediateCatchEvent><sequenceFlow id="flow2" sourceRef="parallelgateway1" targetRef="signalintermediatecatchevent1"></sequenceFlow><sequenceFlow id="flow3" sourceRef="parallelgateway1" targetRef="signalintermediatecatchevent2"></sequenceFlow><serviceTask id="servicetask1" name="Service Task" activiti:class="com.ptm.prdemo.servicetask.ServiceTask"></serviceTask><sequenceFlow id="flow4" sourceRef="signalintermediatecatchevent1" targetRef="servicetask1"></sequenceFlow><serviceTask id="servicetask2" name="Service Task" activiti:class="com.ptm.prdemo.servicetask.ServiceTask"></serviceTask><sequenceFlow id="flow5" sourceRef="signalintermediatecatchevent2" targetRef="servicetask2"></sequenceFlow><userTask id="usertask1" name="User Task"></userTask><sequenceFlow id="flow6" sourceRef="parallelgateway1" targetRef="usertask1"></sequenceFlow><sequenceFlow id="flow7" sourceRef="usertask1" targetRef="signalintermediatethrowevent1"></sequenceFlow><parallelGateway id="parallelgateway2" name="Parallel Gateway"></parallelGateway><sequenceFlow id="flow8" sourceRef="signalintermediatethrowevent1" targetRef="parallelgateway2"></sequenceFlow><sequenceFlow id="flow9" sourceRef="servicetask1" targetRef="parallelgateway2"></sequenceFlow><sequenceFlow id="flow10" sourceRef="servicetask2" targetRef="parallelgateway2"></sequenceFlow><intermediateCatchEvent id="messageintermediatecatchevent1" name="MessageCatchEvent"><messageEventDefinition messageRef="msg"></messageEventDefinition></intermediateCatchEvent><sequenceFlow id="flow12" sourceRef="parallelgateway1" targetRef="messageintermediatecatchevent1"></sequenceFlow><serviceTask id="servicetask3" name="Service Task" activiti:class="com.ptm.prdemo.servicetask.Message"></serviceTask><sequenceFlow id="flow13" sourceRef="messageintermediatecatchevent1" targetRef="servicetask3"></sequenceFlow><sequenceFlow id="flow14" sourceRef="servicetask3" targetRef="parallelgateway2"></sequenceFlow><intermediateCatchEvent id="timerintermediatecatchevent1" name="TimerCatchEvent"><timerEventDefinition><timeDuration>R1/PT5S</timeDuration></timerEventDefinition></intermediateCatchEvent><sequenceFlow id="flow15" sourceRef="parallelgateway2" targetRef="timerintermediatecatchevent1"></sequenceFlow><serviceTask id="servicetask4" name="Service Task" activiti:class="com.ptm.prdemo.servicetask.Over"></serviceTask><sequenceFlow id="flow16" sourceRef="timerintermediatecatchevent1" targetRef="servicetask4"></sequenceFlow><endEvent id="endevent1" name="End"></endEvent><sequenceFlow id="flow17" sourceRef="servicetask4" targetRef="endevent1"></sequenceFlow></process><bpmndi:BPMNDiagram id="BPMNDiagram_intermediate"><bpmndi:BPMNPlane bpmnElement="intermediate" id="BPMNPlane_intermediate"><bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"><omgdc:Bounds height="35.0" width="35.0" x="120.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="parallelgateway1" id="BPMNShape_parallelgateway1"><omgdc:Bounds height="40.0" width="40.0" x="230.0" y="197.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="signalintermediatethrowevent1" id="BPMNShape_signalintermediatethrowevent1"><omgdc:Bounds height="35.0" width="35.0" x="585.0" y="90.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="signalintermediatecatchevent1" id="BPMNShape_signalintermediatecatchevent1"><omgdc:Bounds height="35.0" width="35.0" x="410.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="signalintermediatecatchevent2" id="BPMNShape_signalintermediatecatchevent2"><omgdc:Bounds height="35.0" width="35.0" x="410.0" y="310.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask1" id="BPMNShape_servicetask1"><omgdc:Bounds height="55.0" width="105.0" x="550.0" y="190.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask2" id="BPMNShape_servicetask2"><omgdc:Bounds height="55.0" width="105.0" x="550.0" y="300.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="usertask1" id="BPMNShape_usertask1"><omgdc:Bounds height="55.0" width="105.0" x="375.0" y="80.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="parallelgateway2" id="BPMNShape_parallelgateway2"><omgdc:Bounds height="40.0" width="40.0" x="770.0" y="197.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="messageintermediatecatchevent1" id="BPMNShape_messageintermediatecatchevent1"><omgdc:Bounds height="35.0" width="35.0" x="410.0" y="390.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask3" id="BPMNShape_servicetask3"><omgdc:Bounds height="55.0" width="105.0" x="550.0" y="380.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="timerintermediatecatchevent1" id="BPMNShape_timerintermediatecatchevent1"><omgdc:Bounds height="35.0" width="35.0" x="880.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask4" id="BPMNShape_servicetask4"><omgdc:Bounds height="55.0" width="105.0" x="960.0" y="190.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1"><omgdc:Bounds height="35.0" width="35.0" x="1140.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1"><omgdi:waypoint x="155.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="230.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2"><omgdi:waypoint x="270.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="410.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3"><omgdi:waypoint x="250.0" y="237.0"></omgdi:waypoint><omgdi:waypoint x="250.0" y="327.0"></omgdi:waypoint><omgdi:waypoint x="410.0" y="327.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4"><omgdi:waypoint x="445.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="550.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5"><omgdi:waypoint x="445.0" y="327.0"></omgdi:waypoint><omgdi:waypoint x="550.0" y="327.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6"><omgdi:waypoint x="250.0" y="197.0"></omgdi:waypoint><omgdi:waypoint x="250.0" y="107.0"></omgdi:waypoint><omgdi:waypoint x="375.0" y="107.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7"><omgdi:waypoint x="480.0" y="107.0"></omgdi:waypoint><omgdi:waypoint x="585.0" y="107.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8"><omgdi:waypoint x="620.0" y="107.0"></omgdi:waypoint><omgdi:waypoint x="790.0" y="107.0"></omgdi:waypoint><omgdi:waypoint x="790.0" y="197.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9"><omgdi:waypoint x="655.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="770.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow10" id="BPMNEdge_flow10"><omgdi:waypoint x="655.0" y="327.0"></omgdi:waypoint><omgdi:waypoint x="790.0" y="327.0"></omgdi:waypoint><omgdi:waypoint x="790.0" y="237.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12"><omgdi:waypoint x="250.0" y="237.0"></omgdi:waypoint><omgdi:waypoint x="250.0" y="407.0"></omgdi:waypoint><omgdi:waypoint x="410.0" y="407.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13"><omgdi:waypoint x="445.0" y="407.0"></omgdi:waypoint><omgdi:waypoint x="550.0" y="407.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow14" id="BPMNEdge_flow14"><omgdi:waypoint x="655.0" y="407.0"></omgdi:waypoint><omgdi:waypoint x="790.0" y="407.0"></omgdi:waypoint><omgdi:waypoint x="790.0" y="237.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow15" id="BPMNEdge_flow15"><omgdi:waypoint x="810.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="880.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow16" id="BPMNEdge_flow16"><omgdi:waypoint x="915.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="960.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow17" id="BPMNEdge_flow17"><omgdi:waypoint x="1065.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="1140.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge></bpmndi:BPMNPlane></bpmndi:BPMNDiagram>
</definitions>

测试代码

@Test
public void Intermediate() throws InterruptedException{Deployment deployment = repositoryService.createDeployment().name("intermediate").addClasspathResource("bpmn/intermediate.bpmn").addClasspathResource("bpmn/intermediate.png").deploy();System.out.println("部署ID:"+deployment.getId());System.out.println("部署名称:"+deployment.getName());ProcessInstance pi = runtimeService.startProcessInstanceByKey("intermediate");Task task = taskService.createTaskQuery().processInstanceId(pi.getId()).singleResult();System.out.println("当前流程任务:" + task.getName());taskService.complete(task.getId());//发送message事件Execution ex = runtimeService.createExecutionQuery().processDefinitionId(pi.getProcessDefinitionId()).activityId("messageintermediatecatchevent1").singleResult();runtimeService.messageEventReceived("msgName", ex.getId());Thread.sleep(1000 *15);
}

Demo2【Compensation+None】

流程图总览

NoneThrowingEvent绑定

该事件通常用于指示流程中实现的某些状态。一般用于做监听。

ListenTest

public class ListenTest implements ExecutionListener {@Overridepublic void notify(DelegateExecution execution) {System.out.println("执行监听");}
}

ServiceTask绑定

ServiceTask

public class ServiceTask implements JavaDelegate {@Overridepublic void execute(DelegateExecution execution) {System.out.println("ServiceTask");}
}

ServiceTask2

public class ServiceTask2 implements JavaDelegate {@Overridepublic void execute(DelegateExecution execution) {System.out.println("ServiceTask2");}
}

XML代码

<?xml version="1.0" encoding="UTF-8"?>
<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/test"><process id="Middle" name="My process" isExecutable="true"><intermediateThrowEvent id="compensationintermediatethrowevent1" name="CompensationThrowingEvent"><compensateEventDefinition></compensateEventDefinition></intermediateThrowEvent><intermediateThrowEvent id="noneintermediatethrowevent1" name="NoneThrowEvent"><extensionElements><activiti:executionListener event="start" class="com.ptm.prdemo.servicetask.ListenTest"></activiti:executionListener></extensionElements></intermediateThrowEvent><startEvent id="startevent1" name="Start"></startEvent><serviceTask id="servicetask2" name="Service Task" activiti:class="com.ptm.prdemo.servicetask.ServiceTask2"></serviceTask><serviceTask id="servicetask3" name="Service Task" activiti:class="com.ptm.prdemo.servicetask.ServiceTask"></serviceTask><sequenceFlow id="flow1" sourceRef="startevent1" targetRef="servicetask3"></sequenceFlow><sequenceFlow id="flow2" sourceRef="servicetask3" targetRef="servicetask2"></sequenceFlow><sequenceFlow id="flow3" sourceRef="servicetask2" targetRef="noneintermediatethrowevent1"></sequenceFlow><sequenceFlow id="flow4" sourceRef="noneintermediatethrowevent1" targetRef="compensationintermediatethrowevent1"></sequenceFlow><endEvent id="endevent1" name="End"></endEvent><sequenceFlow id="flow6" sourceRef="compensationintermediatethrowevent1" targetRef="endevent1"></sequenceFlow><serviceTask id="servicetask4" name="Service Task" isForCompensation="true" activiti:class="com.ptm.prdemo.servicetask.ServiceTask"></serviceTask><serviceTask id="servicetask5" name="Service Task" isForCompensation="true" activiti:class="com.ptm.prdemo.servicetask.ServiceTask2"></serviceTask><boundaryEvent id="boundarycompensation1" name="Compensate" attachedToRef="servicetask3" cancelActivity="true"><compensateEventDefinition></compensateEventDefinition></boundaryEvent><boundaryEvent id="boundarycompensation2" name="Compensate" attachedToRef="servicetask2" cancelActivity="true"><compensateEventDefinition></compensateEventDefinition></boundaryEvent><association id="association1" sourceRef="boundarycompensation1" targetRef="servicetask4"></association><association id="association2" sourceRef="boundarycompensation2" targetRef="servicetask5"></association></process><bpmndi:BPMNDiagram id="BPMNDiagram_Middle"><bpmndi:BPMNPlane bpmnElement="Middle" id="BPMNPlane_Middle"><bpmndi:BPMNShape bpmnElement="compensationintermediatethrowevent1" id="BPMNShape_compensationintermediatethrowevent1"><omgdc:Bounds height="35.0" width="35.0" x="530.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="noneintermediatethrowevent1" id="BPMNShape_noneintermediatethrowevent1"><omgdc:Bounds height="35.0" width="35.0" x="440.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"><omgdc:Bounds height="35.0" width="35.0" x="60.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask2" id="BPMNShape_servicetask2"><omgdc:Bounds height="55.0" width="105.0" x="280.0" y="190.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="boundarycompensation2" id="BPMNShape_boundarycompensation2"><omgdc:Bounds height="30.0" width="30.0" x="350.0" y="230.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask3" id="BPMNShape_servicetask3"><omgdc:Bounds height="55.0" width="105.0" x="130.0" y="190.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="boundarycompensation1" id="BPMNShape_boundarycompensation1"><omgdc:Bounds height="30.0" width="30.0" x="190.0" y="230.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1"><omgdc:Bounds height="35.0" width="35.0" x="650.0" y="200.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask4" id="BPMNShape_servicetask4"><omgdc:Bounds height="55.0" width="105.0" x="200.0" y="290.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="servicetask5" id="BPMNShape_servicetask5"><omgdc:Bounds height="55.0" width="105.0" x="400.0" y="290.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1"><omgdi:waypoint x="95.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="130.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2"><omgdi:waypoint x="235.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="280.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3"><omgdi:waypoint x="385.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="440.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4"><omgdi:waypoint x="475.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="530.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6"><omgdi:waypoint x="565.0" y="217.0"></omgdi:waypoint><omgdi:waypoint x="650.0" y="217.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="association1" id="BPMNEdge_association1"><omgdi:waypoint x="205.0" y="260.0"></omgdi:waypoint><omgdi:waypoint x="252.0" y="290.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="association2" id="BPMNEdge_association2"><omgdi:waypoint x="365.0" y="260.0"></omgdi:waypoint><omgdi:waypoint x="452.0" y="290.0"></omgdi:waypoint></bpmndi:BPMNEdge></bpmndi:BPMNPlane></bpmndi:BPMNDiagram>
</definitions>

测试代码

@Test
public void Middle() throws InterruptedException{Deployment deployment = repositoryService.createDeployment().name("Middle").addClasspathResource("bpmn/Middle.bpmn").addClasspathResource("bpmn/Middle.png").deploy();System.out.println("部署ID:"+deployment.getId());System.out.println("部署名称:"+deployment.getName());ProcessInstance pi = runtimeService.startProcessInstanceByKey("Middle");
}

CompensationThrowingEvent注意事项【详细可以参考官网】

CompensationThrowingEvent可用于触发补偿。

如果在包含子流程的范围内抛出补偿且子流程包含具有补偿处理程序的活动,则补偿仅在抛出补偿时成功完成后才传播到子流程。如果嵌套在子流程中的某些活动已完成并附加了补偿处理程序,则如果尚未完成包含这些活动的子流程,则不会执行补偿处理程序。

Activiti 6.x【11】IntermediateEvent相关推荐

  1. linux内部网关协议igp,在自治系统内部的各个路由器之间,运行的是内部网关协议IGP。早期的IGP叫做【11】 ,它执行 【12】 。_考题宝...

    在一个基于TCP/IP协议的网络中,每台主机都有一个IP地址,根据获得IP地址方式 的不同,可以分为静态IP和动态lP.例如:用宽带入网,会有一个固定的IP地址,每 次连入Internet,IP都是固 ...

  2. SCS【11】单细胞ATAC-seq 可视化分析 (Cicero)

    点击关注,桓峰基因 桓峰基因公众号推出单细胞系列教程,有需要生信分析的老师可以联系我们!首选看下转录分析教程整理如下: Topic 6. 克隆进化之 Canopy Topic 7. 克隆进化之 Car ...

  3. 【1-1】统计数字问题

    ´问题描述: 一本书的页码从自然数 1 开始顺序编码直到自然数 n.书的页码按照通常的习惯编排, 每个页码都不含多余的前导数字 0.例如,第 6 页用数字 6 表示,而不是 06 或 006 等.数 ...

  4. 【阿旭机器学习实战】【11】文本分类实战:利用朴素贝叶斯模型进行邮件分类

    [阿旭机器学习实战]系列文章主要介绍机器学习的各种算法模型及其实战案例,欢迎点赞,关注共同学习交流. 本文主要介绍如何使用朴素贝叶斯模型进行邮件分类,置于朴素贝叶斯模型的原理及分类,可以参考我的上一篇 ...

  5. 【斗医】【11】Web应用开发20天

    本文在上文的基础上完成用户登录验证功能. 四.获取数据请求业务处理封装 1.配置数据读取方式,它的作用是使用FrameDataGainer响应以.data结尾的请求,并把处理后的数据返回给客户端.打开 ...

  6. 【Go语言】【11】GO语言的包和函数

    还记得<[2]Sublime配置GO开发环境>的入门例子吗? 当然不记得了:) 这篇文章距离上篇时间太久远了,遥远的我都快忘记了.还是把截图贴上吧 该例子中的func main()表示这是 ...

  7. MATLAB :【11】一文带你读懂serialport串口收发原理与实现

    碎碎念: 这周的主要工作还是集中于FOC中,因为羡慕稚晖君做出的漂亮Qt面板,因此在利用MATLAB复刻过程中,学习了一下serialport的使用.FOC的GUI部分就在加班加点写作中啦,同时最近打 ...

  8. Go语言学习笔记【11】 数据结构之稀疏矩阵、队列、栈

    [声明] 非完全原创,部分内容来自于学习其他人的理论和B站视频.如果有侵权,请联系我,可以立即删除掉. 一.稀疏矩阵 若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵 ...

  9. Activiti 6.x【6】StartEvent(上)

    版权声明:转载注明出处就OK的说,有些东西会转载,都会注明的说= =如果有冒犯麻烦见谅 https://blog.csdn.net/Pan1458689676/article/details/8266 ...

最新文章

  1. 2021年大数据Hadoop(二十二):MapReduce的自定义分组
  2. python的os模块批量获取目标路径下的文件名
  3. TabHost选项卡的 功能和用法
  4. 600兆的html文件怎么打开,如何打开容量600多兆的文本文件
  5. java中如何关闭文件,在Java中捕获IOException后如何关闭文件?
  6. 01背包问题:回溯法和限界分支、递归和迭代方式
  7. 灰度重采样(Gray Resampling
  8. 集合添加元素python_Python基础:列表、字典、元组、集合、添加和删除元素,增删...
  9. js new Date 创建时间默认是8点
  10. bme280 环境传感器开发板_STM32Cube14 | 使用硬件I2C读写环境光强度传感器
  11. html5 dropdownlist,使用HTML5 FindByValue下拉列表(html5 dropdownlist using F
  12. 常用jar包_几个解决 Maven Jar 包冲突的小技巧.
  13. plsql dev中Dynamic Performance Tables not accessible分析解决(转载)
  14. webconfig.xml文件golbalization节的作用
  15. php如何获取当前几号,PHP如何获取当前时间
  16. 和风天气OUC——通过搜索城市快速查询天气
  17. Qt配置opencv
  18. band math函数_波段运算(bandmath)工具中常用的函数和实例.docx
  19. 功夫熊猫里乌龟大师的一句名言
  20. Linux-Qt--2--调试运行终止弹窗问题-The inferior stopped because it received a signal from the Operating System

热门文章

  1. 解决git pull/push每次都需要输入密码问题
  2. ionic ajax 跨域,解决 ionic 中的 CORS(跨域) 问题
  3. spark python 开发环境_Eclipse配置Spark Python开发环境
  4. bioskey的用法
  5. Node.js流,这样的打开方式对不对!
  6. centos7通过yum安装php方法
  7. c# 串口最简单接收十六进制
  8. 模块化以及requirejs和seajs
  9. 【leetcode】Remove Linked List Elements(easy)
  10. 工作笔记---js时间插件的使用