0
点赞
收藏
分享

微信扫一扫

SSM整合SpringSecurity,报错 no ContextLoaderListener or DispatcherServlet registered解决办法。

精进的医生 2022-03-14 阅读 20

问题描述

在SSM项目中整合SpringSecurity之后,启动tomcat弹出的页面就会出现报错,开发环境为IDEA,报错信息如下:
在这里插入图片描述
对于整合SpringSecurity,解决找不到bean的方式有两种,修改源码和整合Spring和SpringMVC的IOC容器。我使用的是将两个IOC容器二合一的方式,结果就报了上面的错误。

原因分析

检查一下web.xml的配置文件,所有的配置文件都交给MVC来扫描了,究其原因,可能是没成功把springmvc放进IOC容器里。在检查所有的配置都没问题的情况下,怀疑是SpringSecurity的版本问题,修改版本后成功解决问题。

解决方法

修改Maven依赖中SpringSecurity的版本,亲测4.3.20的Spring和4.2.10的Security可以兼容。

<properties>
    <!-- 声明属性, 对 Spring 的版本进行统一管理 -->
    <!-- spring.version是别名,随便起,但要跟dependences标签中一致 -->
    <spring.version>4.3.20.RELEASE</spring.version>
    <!-- 声明属性, 对 SpringSecurity 的版本进行统一管理 -->
    <spring.security.version>4.2.10.RELEASE</spring.security.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>
举报

相关推荐

0 条评论