前言
大家好,我是小徐啊。spring boot默认使用spring security,spring security自然不用说是一个强大的安全框架,但是用惯了shiro,一时半会用不来spring security,所以要在spring boot中自己整合shiro。
但是,我遇到了一个报错:UnavailableSecurityManagerException,搜索了网上各种各样的答案,都无法解决我的问题。
如何解决
首先,我遇到的问题,网上都无法解决,至少我没有找到答案。
由于这个代码是以前的同事写的,具体的业务逻辑也比较复杂,但是报错的那一行是从shiro里面获取当前登录用户的用户名。
我一开始不明白,这个为什么会报错。
后来,我想到了一个折中的办法,就是把这一行代码注释掉,这样就不会报错了。
但是,这只是一种下策。虽然解决了报错,但对业务可能或多或少有影响。
然后,继续找答案...
终于,我发现了问题的所在。原来,这个方法是被一个定时任务所调用的,定时任务!!没错,定时任务是会没有登录用户的信息的。这说明原来的同事代码写的有问题。
至少这个方法在定时方法里面调用是有问题的!看来注释掉这行代码是最终的解了。
总结
好了,今天就讲到这儿啦。以上就是Shiro中UnavailableSecurityManagerException的解决方案。如有问题,欢迎留言讨论,感谢你的阅读,请给我点个赞吧!!
如果有对Java入门开发相关的问题,或者想获取各类软件资源,可以关注我的公众号【Java入门学习】,私信我,我会持续更新Java相关的分享!
![0](https://img2024.cnblogs.com/blog/1679109/202502/1679109-20250211162904222-243654333.png)
欢迎访问我的个人网站:https://idea-tips.com/