Activiti——网关

1.排他网关

排他网关(也叫异或(XOR)网关,或叫基于数据的排他网关),用来在流程中实现决策。 当流程执行到这个网关,所有分支都会判断条件是否为true,如果为 true 则执行该分支,

注意,排他网关只会选择一个为 true 的分支执行。(即使有两个分支条件都为 true,排他网关也会只选择一条分支去执行)

  1.1为什么要用排他网关?

    不用排他网关也可以实现分支,如下图

    

     

    上图中,在连线的condition 条件上设置分支条件。

    缺点:

    如果条件都不满足,不使用排他网关,流程就结束了(是异常结束)。如果 使用排他网关决定分支的走向,如下

    

     

     

    如果从网关出去的线所有条件都不满足则系统抛出异常。

    org.activiti.engine.ActivitiException: No outgoing sequence flow of the exclusive gateway 'exclusivegateway1' could be selected for continuing the process

    at org.activiti.engine.impl.bpmn.behavior.ExclusiveGatewayActivityBehav ior.leave(ExclusiveGatewayActivityBehavior.java:85)

    说明 :经过排他网关必须要有一条且只有一条分支走。

猜你喜欢

转载自www.cnblogs.com/chx9832/p/12653055.html