IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

时间:2024-03-29 13:53:46

首先:我是已经有了一个初步的(开发中的)系统,出于业务需要需将工作流集成到我的系统当中,现将我的集成过程记录下来,供大家参考。

step1:在pom中配置流程引擎的相关依赖,如下图:

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

step2:导入工作流设计器的前端样式文件(这几个文件网上有很多)只需要导入下图几个并放在对应的位置就好:

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

网上的文件大多放置在public 文件夹下面,笔者为了统一管理就把他移到resource/static文件夹下面了(Ps:文件的移动或导致js等文件不能被加载,故可能需要修改js路径)

step3:添加工作流模型列表以及流程列表的页面

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

这一部分的实现参考了 Ruoyi这个开源项目的一个项目扩展,不过这个项目的结构是多模块的,需要大家根据自己的项目结构进行调整。地址:http://doc.ruoyi.vip/#/standard/xmkz   (PS:多模块集成工作流)。

哎呀集成的过程网上文档很多,就不细说了;下面来总结一下我遇到的坑:

1.下面这个方法访问不成功:是因为需要带参数;空查询就抱404

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

2.需要定位资源文件的位置(Ps:springBoot 不需要配置项目名称,其他的框架需要 projectName/service )

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

配置后这三个文件需同步更改为上述配置路径:

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

3.国际化编码的问题:

需导入中文版的json,并修改app.js里面的如下配置:这个在上述开源项目的文档里面就有IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

4.如果是直接使用Ruoyi这个项目框架将多模块改为单模块的话,需要做如下修改(Ps:原框架的header 是要带参数的,某则会报 activiti/model/model 404 ) model 以及process 文件夹下面的页面都需要做如下修改。

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

5.解决:“org.xml.sax.SAXParseException: cvc-complex-type.4: 元素 'sequenceFlow' 中必须包含属性 'sourceRef'”报错

参考了:https://blog.csdn.net/starjuly/article/details/78805136

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

6.启动时候:Action: Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true

笔者是因为写了两个关于Activiticonfig的文件,并在其中使用了相同的bean,导致这个错误;我选择删掉了其中一个,在yml 的spring 层下做了如下配置:(PS:yml 语法限制特别的严格,特别注意每个层次的代码要对齐,不可以有多余的空格,某则报错或配置不生效,挺麻烦的)

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

7.工作流配置过后,在启动文件里面需要做如下配置,避免被一些安全机制拦截等等

IDEA +Springboot2.0 集成 Activiti 5.2教程 以及采坑笔记

先写这么多了,欢迎大家提问讨论,小菜鸡一枚,希望和大家共同学习。