SpringBoot整合activiti遇到的一些问题
我这是在springboot的基础上引入activiti,springboot的配置很简单就不说了,整合activiti互不影响
安装插件
我使用的是IDEA,首先需要安装插件
settings搜索actiBPM,找不到搜索就好了,我这里已经安装好了。
引入依赖
<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter-basic</artifactId> <version>6.0.0</version> </dependency>
其实这样就可以了,接下来启动
启动
问题1
一开始我引入依赖不是上面那个,是下面这个,少了个basic,版本也不一样,具体可以上maven查看
<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter</artifactId> <version>7.1.0.M2</version> </dependency>
如果引入这个依赖,会出现一个问题,就是
每次启动会出现这个,然后psotman访问回401,关于401网上基本都是说引入了‘spring-boot-starter-security’,但我会这里没有引入security包也出现了,怎么解决呢?我也不知道,因为后来我换成一开始那个依赖,就没有这个问题了,但出现其他问题。
题外话:这个‘spring-boot-starter-security’非常有意思,用网页打开你的项目会出现一个登录页面,而且这个页面还不是你写的,
输入用户名:user
密码:(启动时会提供密码,随机的,截图红色框内那个)
就可以正常访问了,不然访问会被拦截,但用postman就不知道如何处理了,以后有兴趣可以了解下。
问题2
变回一开始那个依赖,启动会报以下问题:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration$EnableWebMvcConfiguration.class]: Invocation of init method failed; nested exception is java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
具体原因应该是少了security的问题
解决办法:
@SpringBootApplication( exclude = SecurityAutoConfiguration.class)
在springboot启动类上加上括号里面这句,让springboot排除掉security就好了。
问题3
启动之后查看数据库,没有新增表
解决方案:
在配置文件,数据库链接url后面加上
nullCatalogMeansCurrent=true
原因是:activiti5.0 默认true 6.0默认false
问题4
启动成功之后,你会发现你的数据库新增了很多表,网上有人说是25,但我只有17张表,是因为activiti版本不同,默认初始化生成的表不一样。如若少了表,
解决办法:
在配置文件application.yml加上配置
spring: activiti: db-history-used: true
再启动就有了
我这里是application.yml,跟application.properties是类似的,写法不同而已。但yml看起来更清爽
问题5
因为我一开始不知哪个版本号,就经常改版本,有一次启动出现一个问题
Could not update Activiti database schema: unknown version from database: ‘7.x.x.x‘
原因是: activiti 相关的jar版本和表 act_ge_property 中 schema.version 所存储的版本不一致导致报错的。因为之前版本生成的表,和新版本的表有冲突。
解决办法:
方案一、act_ge_property 表中的 schema.version 字段版本修改为和 activiti jar包版本一致即可。
方案二、简单直接,把之前生成的表删了,再启动生成一次,就好了。
其他细节
1.xx.bpmn 文件,activiti似乎有默认扫描路径,放在resources/processes文件下。
2.idea安装actiBPM插件,经常会报错,这个不用理他就好了。这点做得不如eclipse,希望官方能更新这个插件。
- springboot中整合activiti流程设计器时遇到访问项目需要输入tomcat用户名和密码的问题
- spring整合activiti-modeler在线编辑流程遇到的一些问题
- Spring-Boot整合通用PageHelper插件遇到的问题
- Spring boot整合mybatis puls遇到的问题
- IDEA创建一个spring-boot整合Mybatis的模块时,遇到的问题
- spring boot 发布 web service接口,以及遇到的一些问题
- 在本地tomcat中调试Spring boot项目遇到的一些问题
- Spring Boot整合Activiti,查看流程图出现中文乱码问题
- flex 整合spring,hibernate遇到的一些问题
- 【求助】Spring Boot 2 与Activiti 7 整合出现打开URL出现signin问题
- springboot 2 整合swagger2 以及遇到的一些坑
- Spring Boot 整合Spring Security 和Swagger2 遇到的问题小结
- 在idea里使用SpringBoot整合MyBatis时遇到的Mapper扫描不到的问题
- 初学Spring Boot遇到的一些问题及解决方案
- Spring与Mybatis的整合过程中遇到的一些问题
- Springboot整合activiti6.0问题汇总
- spring boot 与dubbo 2.8.4整合的一些问题
- springboot整合mybatis遇到的问题
- jpa和spring再整合的时候所遇到的一些问题,异常(终结版!!!)
- springboot项目打成war包部署到tomcat遇到的一些问题