添加了app自定义短信验证码的登录方式后 @Autowired AuthenticationManager注入为NULL
来源:6-5 重构短信登录
乌_托_邦
2020-04-07


首先我在未添加任何自定义登录方式的时候,使用password的方式登录一切正常,我加断点查看项目启动时是先走到了创建authenticationManagerBean的地方后才走到了AuthServerConfig中,这时候因为authenticationManagerBean已经创建了所以AuthServerConfig中通过@Autowired AuthenticationManager是能取到Bean的。
后来我在项目中增加了自定义的短信验证码登录的代码后,我发现项目启动时的顺序变了 ,通过断点调试
先走到了这块调用的地方之后才再到了authenticationManagerBean创建的地方,这时因为authenticationManagerBean还未创建,所以在调用的地方取到的是null,这时候再使用Password的方式登录就会报错,如下图:
这个问题困扰我两天了,请问老师以及同学问有没有遇到类似情况的 如何解决?
写回答
1回答
-
JoJo
2020-04-13
看一下WebSecurityConfigurerAdapter的authenticationManagerBean()方法的注释。应该在我们的配置类里覆盖此方法并按照注释中的说明将其明确声明成bean即可。
012020-04-13
Spring Security技术栈开发企业级认证与授权
Spring Security技术栈,REST风格开发常见接口,独立开发认证授权模块保证REST服务安全
2662 学习 · 1561 问题
相似问题
短信验证码登录问题
回答 1
微信登录绑定后 直接登录
回答 1