EngineConfiguration的实现类是一个抽象类:AbstractEngineConfiguration 一.引擎配置的分类 继承 AbsractEngineConfiguration的子类实现不同方面的功能,包括: 1.身份管理引擎配置 2.表单引擎配置 3.决策引擎配置 4.内容引擎配置 5.流程引擎配置 下图是除了流程引擎配置之外的4个引擎配置的继承关系图,流程引擎配置后面单独介绍. 二.具体实现 下面从自底向上的顺序,分析一下代码: 1.StandaloneInMem 引擎配置…
EngineConfiguration 是flowable引擎的核心部件. 在 flowable 中,实现引擎配置的顶层类是 AbstractEngineConfiguration 这是一个抽象类. 一.作用 1.第一个作用是配置引擎使用的数据库信息. protected String databaseType; protected String jdbcDriver = "org.h2.Driver"; protected String jdbcUrl = "jdbc:h2…
前言 目前主流的Java开源流程引擎有Activiti.Flowable.Camunda,笔者在进行流程引擎技术选型时,除了功能方面,性能和稳定性是尤其关注的指标,是选择Flowable?还是Camunda?我们先进行了二者性能对比测试,先分享给大家. 一.测试环境 PC笔记本,8G内存,CPU两核i5-8250压测工具:JMeter5.1数据库:mysql5.7Flowable版本:6.4.1Camunda版本:7.10 二.测试用例 基于springboot编写测试代码,调用流程引擎的API…
前言 很多项目使用流行的Rxjava2 + Retrofit搭建网络框架,Rxjava现在已经发展到Rxjava2,之前一直都只是再用Rxjava,但从来没有了解下Rxjava的内部实现,接下来一步步来分析Rxjava2的源码,Rxjava2分Observable和Flowable两种(无被压和有被压),我们今天先从简单的无背压的observable来分析.源码基于rxjava:2.1.1. 一.Rxjava如何创建事件源.发射事件.何时发射事件.如何将观察者和被观察者关联起来 简单的例子 先来…
一.flowable的五个引擎 flowable包含五个引擎,分别是: 1.内容引擎 ContentEngine 2.身份识别引擎 IdmEngine 3.表单引擎 FormEngine 4.决策引擎 DmnEngine 5.流程引擎 ProcessEngine 二.引擎包含的服务 每个引擎由相对应的 EngineConfiguration进行创建,在创建过程中对每个引擎使用的服务进行初始化. 1.内容引擎 ContentEngine 内容引擎包含的服务有: ContentManagementS…
目录 Activiti架构分析及源码详解 引言 一.Activiti设计解析-架构&领域模型 1.1 架构 1.2 领域模型 二.Activiti设计解析-PVM执行树 2.1 核心理念 2.2 ActivitiImpl与作用域 2.3 ExecutionEntity 三.代码解析-流程启动 3.1 流程说明 3.2 额外补充 四.代码解析-原子操作 4.1 说明 4.2 AbstractEventAtomicOperation 4.3 AtomicOperationActivityExecut…
1. 名词解释 1.1. BPM Business Process Management,业务流程管理,“通过建模.自动化.管理和优化流程,打破跨部门跨系统业务过程依赖,提高业务效率和效果”. 1.2. BPMN Business Process Modeling Notation,业务流程建模与标注,包括这些图元如何组合成一个业务流程图(Business Process Diagram):讨论BPMN的各种的用途,包括以何种精度来影响一个流程图中的模型:BPMN作为一个标准的价值,以及BPMN…
一.核心配置类 package com.magus.project.flow.config; import com.google.common.collect.Maps; import com.magus.project.flow.listener.ProcessStartedListener; import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType; import org.flowable.com…
背景 近几年,互联网企业从消费互联网向产业互联网转型.在消费互联网时期,企业面对的时C端消费者,而产业互联网面对的是B端用户. 产业互联网涉及方方面面,企业信息化的建设就是B端用户的业务之一,在企业就存在上下级关系,存在审批业务,需要流程管理. 在企业信息化建设中流程管理也是重要的一部分,如下基于flowable简单的分析流程定义. 流程的一点基本概念 开始节点,结束节点和人工任务节点 网关 自动服务任务  顺序流 网关分支 并行分叉 AND-split(Parallel Split) 两个分支…
Java安全之Axis漏洞分析 0x00 前言 看到个别代码常出现里面有一些Axis组件,没去仔细研究过该漏洞.研究记录一下. 0x01 漏洞复现 漏洞版本:axis=<1.4 Axis1.4 freemarker 下载Axis包1.4版本将Axis放到tomcat的webapp目录中.freemarker.jar放到Axis的 lib目录下.运行tomcat即可. WEB-INF/web.xml 中将该配置取消注释 <servlet-mapping> <servlet-name&…