Activiti7 填坑笔记
小于 1 分钟
Activiti7 填坑笔记
提示
该文章记录一下使用 Activiti7 时所遇到的一些异常或者坑
Error: UsernameNotFoundException
环境:SpringBoot 集成 Activiti7
Activiti7 版本:7.0.0
异常原因
Activiti7 默认和Spring Security集成了,当我们的项目中不需要Spring Security时,需要排除Spring Security配置,但是 Activiti7 在代码中强耦合了SpringScurity,所以我们在使用 activiti 的 Api 查询候选人任务时会遇到异常
taskService.taskCandidateUser(candidateUser);
Caused by: org.springframework.security.core.userdetails.UsernameNotFoundException: XX
该 Api 会调用 SpringScurity 中的 UserDetailsService 类型的bean中的 loadUserByUsername
方法.然后是找不到的,所以报错了
解决方案
写一个类实现 UserDetailsService 然后重写 loadUserByUsername 方法
@Component
public class SelfUserDetailsServiceImpl implements UserDetailsService {
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
return new User(username,"", Collections.emptyList());
}
}