SpringBoot camunda

1:默认排他网关,表达式
Type:expression:${number%200==0}
2: service task (系统自动执行用的最多):常用Delegate expression
${testGateWay}
举例:

@Component("testGateWay")
public class TestGateWay implements JavaDelegate {
    @Override
    public void execute(DelegateExecution delegateExecution) {
        Object number = delegateExecution.getVariable("number");
        System.out.println("testGateWay::: number:" + number);

    }
}

CALL ACTIVITY:调用子流程,在子流程执行结束前主流程等待。

选择类型为BPMN,Called element:为子流程的名字,Binding 为最后一个版本。

In mapping:表示从主流程往下传参,propagation:透传所有主流程参数到子流程。

Out Mapping:表示子流程执行结束后像主流程传的参数,这里使用Source expression表示主流程接受一个子流程返回字段为 subFlag的字段。

子流程图的ID 与主流程Call element呼应,图例子流程是个User Task,在User Task执行结束前主流程等待

子流程的返回参数在End 流程新增Execution listeners,子流程结束触发,同样采用Delegate Expression.代码如下:

@Component("subEnd")
public class SubEndListener implements ExecutionListener {
    @Override
    public void notify(DelegateExecution delegateExecution) {
        //传回给主流程 标识子流程运行结束
        delegateExecution.setVariable("subFlag", "1");
        System.out.println("子流程执行subEnd listener 准备返回主流程参数::::::::");
    }
}

此时,主流程就会进入到测试子流程结束的阶段,同时获取子流程返回的字段。

至此,主流程结束。

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-05-04 21:56:03       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-04 21:56:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-04 21:56:03       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-04 21:56:03       20 阅读

热门阅读

  1. 算法:状态压缩dp

    2024-05-04 21:56:03       15 阅读
  2. 什么是CI/CD流水线

    2024-05-04 21:56:03       12 阅读
  3. windows ubuntu:sed,awk,grep篇:5.sed 附加命令

    2024-05-04 21:56:03       12 阅读
  4. GitHacker:Git源码泄漏检测工具可恢复整个Git Repo

    2024-05-04 21:56:03       10 阅读
  5. 由混淆依赖所引起的RCE

    2024-05-04 21:56:03       10 阅读
  6. 深入探索Elasticsearch中的QueryBuilders

    2024-05-04 21:56:03       10 阅读
  7. 每日一算法

    2024-05-04 21:56:03       12 阅读
  8. 深入探索 Vue 中的 createVNode 与 resolveComponent

    2024-05-04 21:56:03       10 阅读
  9. TS 泛型

    2024-05-04 21:56:03       9 阅读