You need to enable JavaScript to run this app. Spring-MVC 3.2升级至5.0时spring-security.xml配置报错求助
优惠活动
大模型
产品
解决方案
定价
更多

Spring-MVC 3.2升级至5.0时spring-security.xml配置报错求助

问题排查与修复方案

错误日志明确指出ConcurrentSessionFilter类不存在sessionexpiredUrl可写属性,这是Spring Security从3.x升级到4.x及以上版本时的不兼容变更导致的,同时你的配置文件还存在多处语法错误,全部修复方案如下:

1. 修复ConcurrentSessionFilter配置(解决首要报错)

Spring Security 4.0+版本中,ConcurrentSessionFilter的sessionExpiredUrl属性已被移除,改为通过构造函数直接传入会话过期跳转地址,把你的concurrencyFilter配置替换为如下内容:

<beans:bean id="concurrencyFilter" class="org.springframework.security.web.session.ConcurrentSessionFilter">
    <beans:constructor-arg name="sessionRegistry" ref="sessionRegistry" /> 
    <beans:constructor-arg name="expiredUrl" value="/web/Default.html" />
</beans:bean>

2. 修复配置文件中的其他语法错误

这些错误会在你解决第一个问题后继续导致启动失败,需同步修改:

  • 修复<session-management>标签属性拼写错误:
    原配置:<session-management session-authentication strategy-ref="sas" invalid-session-url="/web/Auth.html" />
    修改为:<session-management session-authentication-strategy-ref="sas" invalid-session-url="/web/Auth.html" />
  • 修复拦截路径中的空格错误:把两处j_spring security_check都修改为j_spring_security_check
  • 修复Bean ID中的空格错误:
    原配置:<beans:bean id="CustomAuthentication Provider" class="com.test.authentication.CustomAuthenticationProvider"/>
    修改为:<beans:bean id="CustomAuthenticationProvider" class="com.test.authentication.CustomAuthenticationProvider"/>
  • 修复引用名称的空格错误:
    原配置myAuthFilter里的<beans:property name="authenticationManager" ref="authentication Manager" />
    修改为:<beans:property name="authenticationManager" ref="authenticationManager" />
  • 修复标签闭合错误:sas的Bean配置里,RegisterSessionAuthenticationStrategy的闭合标签原是</beans:beans>,修改为</beans:bean>

3. 额外兼容提示

Spring Security 5.0+默认要求配置密码编码器,如果你之前没有显式配置,启动后可能会报密码编码器相关错误,可以在配置中添加如下Bean(生产环境不推荐使用NoOpPasswordEncoder,建议替换为BCryptPasswordEncoder等强加密编码器):

<beans:bean id="passwordEncoder" class="org.springframework.security.crypto.password.NoOpPasswordEncoder" factory-method="getInstance"/>

在你的CustomAuthenticationProvider中注入该passwordEncoder使用即可。


内容的提问来源于stack exchange,提问作者Vani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 22:15:03