spring boot整合activiti异常问题

  • Post author:
  • Post category:其他




项目场景:

最近在学习使用spring boot整合activiti实现工作流程自动化。刚开始从网上copy了一个模板,把所有的环境都搭建好后测试运行没什么问题,数据表也全部创建完成。但是第二天来跑时就产生了异常。

版本控制:idea 2021+activiti BPMN visualizer




问题描述

异常情况如下:

Parameter 0 of method userGroupManager in org.activiti.core.common.spring.identity.config.ActivitiSpringIdentityAutoConfiguration required a bean of type 'org.springframework.security.core.userdetails.UserDetailsService' that could not be found.



原因分析:

从异常描述中可知,spring搜索不到UserDetailsService bean对象。

后来通过逐步排查发现,该异常的产生是受到了activiti坐标的影响。




解决方案:

引入security坐标。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
    <version>2.3.4.RELEASE</version>
</dependency>



补充:

在解决以上问题后由于Activiti 启动器提供了一个 Spring Boot 自动配置类,它使用HTTP basic身份验证保护所有 REST 端点,所以在发送请求时需要设置相关的身份信息,否则会造成401错误。提示如下:

Using generated security password: 0a7a2af2-8309-484c-8599-33ea62ddb0b9

This generated password is for development use only. Your security configuration must be updated before running your application in production.

如果我们想使用不同的安全配置而不是 HTTP Basic 身份验证,可以关闭禁用springsecurity,之后就可以不带验证的访问服务了。

@SpringBootApplication(exclude = {
        org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class,
        org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration.class
})



版权声明:本文为qq_50626505原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。