最近在弄spring boot 整合shiro的激才。這里記錄其中一個錯誤:
1:No SecurityManager accessible to the calling code, either bound to the org.apache.shiro.util.ThreadContext or as a vm static singleton.? This is an invalid application configuration.
各種搜索:發(fā)現(xiàn)相關的
說web.xml中沒有添加shiro相關的攔截器拆吆。凱哥現(xiàn)在用的是spring boot幕侠。web.xml沒有梳毙。但是凱哥配置了shiro的核心攔截器啊徙赢。如下圖:
并且使用了@Configuration這個注解了赂弓。可是為什么還是會報錯呢孽鸡?
在好好看看人家的分析蹂午,說是web.xml文件中沒有添加。我使用了@Configuration理論上彬碱,spring boot會自動加載啊豆胸。回頭在看看spring boot啟動類:
好像沒問題啊巷疼。因為在沒有基礎shiro的時候晚胡,項目還是正常運行的。在細細一看嚼沿,感覺好像還是不對估盘。為什么呢?
因為我們使用了@Configuration這個注解骡尽,而在spring boot啟動類似我們只配置了scanBasePackages和mapperscan這兩個注解忿檩。但是configuration這個注解不在上面兩個掃描范圍中啊。分析到原因后爆阶,解決方案就是讓這個注解spirng boot也能管理就可以看了。所以果斷在上面添加@componenScan這個注解。
如下圖:
添加后辨图,重啟繼續(xù)訪問登錄:
登錄成功班套。成功。
總結(jié):
網(wǎng)上有很多成熟的spring 整合shrio的代碼故河。如果對spring boot注解了解的話吱韭。其實很容易就整合的。