Activiti6 工作流本地部署及更改数据源为MySQL

什么是工作流

既然你都来看这篇文章了还需要介绍什么是工作流? 所以我们直入正题…

准备工作

  1. 下载 war 包, JDK1.8,Tomcat(最新目前应该是 9.0.17)

  2. 你需要在 GitHub Activiti 中下载 Activiti6 的 war 包, Activiti6 源码在这里

    github 速度太慢可以从这里下载下载

  3. 安装 MySQL 版本 5.6 或 5.7 都可以 我这里只能装的是 MySQL8.0[5.8]

  4. Tomcat 略

  5. JDK 略

  6. 数据库连接工具 Navicat

    本地环境


  1. PATH 配置 JDK 环境
  2. 安装 Tomcat
  3. 解压
    • 解压后应该就是这个样子
      解压后目录
    • war 包目录
      war 包目录

本地运行

  1. 删除webapps下所有文件, 复制 war 包到tomcat/webapps 目录下
    webapps 目录

  2. 打开cmd进入Tomcat/bin 目录下 执行startup.bat
    startup.bat 启动

    出现以下字样表示启动成功
    启动成功

    如未成功请检测本地环境是否正常

浏览器访问项目并在 admin 中对 app 进行配置

activiti-app

  • 登录页面
    用户名密码:admin/test
    app 登录

  • 登陆成功页面
    app 登录成功

activiti-admin

  • 登录页面
    用户名密码:admin/admin
    登录界面

  • 登录成功页面
    登录成功页面

admin 中配置 app
    1. 检查配置
      检查配置
    1. 修改配置
      用户名密码应该是能够登陆app的账户密码
      修改配置
    1. 再次检查配置
      再次检查配置

    配置成功后即可对流程进行统一管理, 不过这都是后话了

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文件
    修改如图所示
    app修改

    下方的红框中为创建库表时添加的默认用户 所以activiti-app用户名密码为:admin/test

activiti-admin 修改

  • 修改activiti-admin项目
    修改/webapps/activiti-admin/WEB-INF/classes/META-INF/activiti-admin目录下activiti-admin.properties文件
    修改如图所示
    admin修改

    下方红框中标注的是 activiti-admin中对activiti-app的默认配置 可对其进行修改

activiti-rest 修改

  • 修改activiti-rest项目
    修改/webapps/activiti-rest/WEB-INF/classes目录下db.properties文件
    因为db.properties文件中没有给我们提供现成的 链接信息只有默认的H2数据库信息, 所以从其他两个应用中随便复制一份过来稍作修改即可
    修改如图所示
    rest修改

添加数据库驱动 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为例
admin添加jar

创建数据库

  • 我们根据三个应用自带的数据库名称建立同名数据库, 数据库编码为utf8, 编码格式不填默认是utf8_general_ci 这个东西看过但没做研究可以看看 utf8 与 utf8mb4 区别
    还是以activiti-admin为例 分别建立 activitiadmin、activiti6ui、activitirest三个数据库
    创建admin数据库

访问及问题解决

启动访问参考本地运行第二步

  • 更改数据源后第一次启动
    最终显示启动成功
    启动成功

    但往前翻日志的话中间的 log 显示是有报错的
    启动错误信息
    根据字面意思就是无法创建连接可以推测出是驱动有问题, 反正最终是启动成功了, 所以此时数据库应该有表创建才对

错误排查

  • 查看之间创建的数据库发现 app 应用所使用的activiti6ui数据库没有表而其他两个应用是有表的, 所以刚才的错误应该是activiti-app应用打印出的
    启动错误没有表

    • 检查数据库配置文件驱动信息是否填写错误
  • 因为我用的 MySQL 是 8.0 而我使用的驱动 jar 包是低版本的 , 本想将 jar 包进行替换, 换成 8.0.13 发现activiti-app这个应用自带的有一个mysql-connector-java-5.1.30.jar 加上刚才我们添加进去的所以就有了 jar 包冲突
    启动jar包冲突

  • 将旧版本的 jar 包删除, 并将三个数据库表都删除让应用重新生成
    删除冲突jar

    ### 启动访问应用
    
  • 再次启动应用
    没有报错信息, 一切正常
    启动正常

  • 查看库表信息, 三个数据库都有表生成
    正常启动库表

  • 访问应用
    三个应用都访问正常
    应用访问

总结

  • tomcat 本地启动 war 包
  • 修改应用数据源配置
  • 检查数据源信息是否正确
  • 添加数据源对应的驱动 jar
  • 查看日志, 排查原因, 排除冲突 jar
  • 数据源修改后启动访问成功
  • Flowable 也可以按照这种方式修改数据源
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值