Abx5接入新流程引擎操作手册

Abx5接入新流程引擎操作手册

Step1 添加依赖包

1. 通过Maven坐标

解压资源包,将maven_repository目录中的依赖包上传到私库。

通过以下坐标引入:

<dependency>  
    <groupId>cn.com.agree.aops</groupId>  
    <artifactId>aops-bizflow-spring-boot-starter</artifactId>  
    <version>1.0</version>  
</dependency>

1.0版本应替换为实际的版本

2. 通过依赖包

解压资源包,找到libs目录。该目录为新流程引擎所依赖的所有jar包,需要添加到abx5平台中。
注意:如果abx5平台中已有相应的jar,则可以保留abx5平台的依赖

Step2 初始化数据库

执行sql目录下的数据库脚本初始化数据库。

Step3 修改Abx5调用

Abx资源目录根据说明替换或修改对应的文件(不建议直接替换,避免修改不一致)。

  1. BizFlowClient.java

添加到技术组件

  1. ActivitiClient.java

替换技术组件。为了减少修改范围同时在测试阶段兼容旧的引擎,采用修改原ActivitiClient配合应用变量的方式将调用转向新的流程引擎调用。后期稳定后可修改为直接调用BizFlowClient

注意:该方式需要在abx5平台的启动脚本中添加启动参数:-Dabpm.useflow=true

  1. ActivitySubmit.java

替换业务组件。

注意:ObjectSubmit.java请自行修改

  1. PUBLICOUT.java

替换业务组件。该修改主要为了在交易结束前保存流程实例。

Step4 修改Abx5启动配置文件

修改abx5平台的application.yml文件,加入新流程引擎的配置项。

bizflow:
    ttl: 900 # 单个流程实例缓存有效时间。默认 900。单位:秒  
    baseDir: "/home/cmo/abpm/catchs/BankCModule" # 流程定义文件目录。应该指向abpm原有的模块目录
    processDefinitionRefreshSeconds: 0 #流程定义文件更新检查间隔,配置后会定时对比文件MD5重载被修改的流程文件。单位:秒。默认0,不开启
    hikariConfig:
        jdbcUrl: "jdbc:mysql://192.168.71.112:3306/abpm_x5c?autoReconnect=true&nullCatalogMeansCurrent=true&useUnicode=true&characterEncoding=utf8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&useSSL=false&tcpRcvBuf=1024000"
        username: root
        password: root
        maximumPoolSize: 20 # 最大数据库连接数,根据实际情况调整

实现自定义数据源

引擎默认使用hikaricp作为数据源,如果需要使用其它方式提供数据源,可以实现该接口:cn.com.agree.backend.aops.bizflow.BizFlowDatasourceSupplier
然后将该接口的实现注册为Spring的Bean对象即可。例如:

@Bean  
public BizFlowDatasourceSupplier defaultDatasourceSupplier() {  
    return new HikariCPDataSourceSupplier(bizFlowProperties);  
}