现有项目集成工作流,springboot版本为2.1.3.RELEASE,待集成activiti版本7.1.0.M1,项目采用maven方式管理,集成步骤如下
1、maven配置依赖包,项目本身已使用mybatis-plus,需要去除activiti依赖的mybatis包,不然会冲突
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring-boot-starter</artifactId>
<version>7.1.0.M1</version>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
</exclusions>
</dependency>
2、activiti本身依赖spring security组件做权限管理,但项目已使用shiro,所以需要屏蔽security相关功能,项目中配置
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
//禁用csrf 和关闭权限验证
http.csrf().disable().authorizeRequests().anyRequest().permitAll().and().logout().permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
super.configure(auth);
}
3、activiti属性配置
spring.activiti.db-history-used: true 没有此项配置的话,历史表不会生成,其他的配置可以参照activiti6配置方式