什么是工作流
既然你都来看这篇文章了还需要介绍什么是工作流? 所以我们直入正题…
准备工作
-
下载 war 包, JDK1.8,Tomcat(最新目前应该是 9.0.17)
-
你需要在 GitHub Activiti 中下载 Activiti6 的 war 包, Activiti6 源码在这里
github 速度太慢可以从这里下载下载
-
安装 MySQL 版本 5.6 或 5.7 都可以 我这里只能装的是 MySQL8.0[5.8]
-
Tomcat 略
-
JDK 略
-
数据库连接工具 Navicat
本地环境
- PATH 配置 JDK 环境
略 - 安装 Tomcat
略 - 解压
- 解压后应该就是这个样子
- war 包目录
- 解压后应该就是这个样子
本地运行
-
删除
webapps
下所有文件, 复制 war 包到tomcat/webapps
目录下
-
打开
cmd
进入Tomcat/bin
目录下 执行startup.bat
出现以下字样表示启动成功
如未成功请检测本地环境是否正常
浏览器访问项目并在 admin 中对 app 进行配置
activiti-app
-
登录页面
用户名密码:admin/test
-
登陆成功页面
activiti-admin
-
登录页面
用户名密码:admin/admin
-
登录成功页面
admin 中配置 app
-
- 检查配置
- 检查配置
-
- 修改配置
用户名密码应该是能够登陆app
的账户密码
- 修改配置
-
- 再次检查配置
配置成功后即可对流程进行统一管理, 不过这都是后话了
- 再次检查配置
activiti-rest
-
登录页面
用户名密码:kermit/kermit
-
登录成功页面
登录注意事项: 需要在项目路径后加
/docs
否则汇报404
默认登录名密码为kermit
修改数据源
修改/webapps/activiti-*
各项目中 /WEB-INF/classes/META-INF/activiti-*/*.properties
文件中对应的数据库连接信息即可
activiti-app 修改
-
修改
activiti-app
项目
修改/webapps/activiti-app/WEB-INF/classes/META-INF/activiti-app
目录下activiti-app.properties
文件
修改如图所示
下方的红框中为创建库表时添加的默认用户 所以
activiti-app
用户名密码为:admin/test
activiti-admin 修改
-
修改
activiti-admin
项目
修改/webapps/activiti-admin/WEB-INF/classes/META-INF/activiti-admin
目录下activiti-admin.properties
文件
修改如图所示
下方红框中标注的是
activiti-admin
中对activiti-app
的默认配置 可对其进行修改
activiti-rest 修改
- 修改
activiti-rest
项目
修改/webapps/activiti-rest/WEB-INF/classes
目录下db.properties
文件
因为db.properties
文件中没有给我们提供现成的 链接信息只有默认的H2
数据库信息, 所以从其他两个应用中随便复制一份过来稍作修改即可
修改如图所示
添加数据库驱动 jar 包
-
分别在三个应用
/webapps/activiti-*/WEB-INF/lib
目录下添加mysql-connector-java-5.1.46.jar
注意如果使用 mysql-connector-java-8.0.13.jar 或以上版本的 jar 数据库连接驱动为
com.mysql.cj.jdbc.Driver
下图以activiti-admin
为例
创建数据库
- 我们根据三个应用自带的数据库名称建立同名数据库, 数据库编码为
utf8
, 编码格式不填默认是utf8_general_ci
这个东西看过但没做研究可以看看 utf8 与 utf8mb4 区别
还是以activiti-admin
为例 分别建立activitiadmin、activiti6ui、activitirest
三个数据库
访问及问题解决
启动访问参考本地运行第二步
-
更改数据源后第一次启动
最终显示启动成功
但往前翻日志的话中间的 log 显示是有报错的
根据字面意思就是无法创建连接可以推测出是驱动有问题, 反正最终是启动成功了, 所以此时数据库应该有表创建才对
错误排查
-
查看之间创建的数据库发现 app 应用所使用的
activiti6ui
数据库没有表而其他两个应用是有表的, 所以刚才的错误应该是activiti-app
应用打印出的
- 检查数据库配置文件驱动信息是否填写错误
-
因为我用的 MySQL 是 8.0 而我使用的驱动 jar 包是低版本的 , 本想将 jar 包进行替换, 换成 8.0.13 发现
activiti-app
这个应用自带的有一个mysql-connector-java-5.1.30.jar
加上刚才我们添加进去的所以就有了 jar 包冲突
-
将旧版本的 jar 包删除, 并将三个数据库表都删除让应用重新生成
### 启动访问应用
-
再次启动应用
没有报错信息, 一切正常
-
查看库表信息, 三个数据库都有表生成
-
访问应用
三个应用都访问正常
总结
- tomcat 本地启动 war 包
- 修改应用数据源配置
- 检查数据源信息是否正确
- 添加数据源对应的驱动 jar
- 查看日志, 排查原因, 排除冲突 jar
- 数据源修改后启动访问成功
- Flowable 也可以按照这种方式修改数据源