1
我需要在spring security中实现会话管理,但在tomcat上部署应用程序时出现错误。应用程序试图从属性文件中获取invalid-session-url和expired-url属性值,但在耗尽时出错。春季安全中读取属性文件中的值时出错:会话管理标记
<security:http entry-point-ref="casAuthenticationEntryPoint" auto-config="true">
<security:intercept-url pattern="/*" access="ROLE_USER"/>
<security:custom-filter position="CAS_FILTER" ref="casAuthenticationFilter"/>
<security:logout invalidate-session="true" logout-url="/logout" logout-success-url="#{CAS_server}/logout?service=#{CAS_application}/" delete-cookies="JSESSIONID"/>
<security:session-management invalid-session-url="#{CAS_server}/logout?service=#{CAS_application}" session-fixation-protection="newSession" >
<security:concurrency-control max-sessions="1" expired-url="#{CAS_server}/logout?service=#{CAS_application}" error-if-maximum-exceeded="true" />
</security:session-management>
</security:http>
我只会在会话管理标签上看到这个错误。任何人都有任何想法。
我正在使用JNDI查找获取这些值,但获得会话管理标记的错误onlu。 \t \t –
引起:java.lang.IllegalArgumentException:url必须以'/'或'http(s)'开头 –
这是Spring安全性引发的验证错误 - 您从JNDI查找中获得的url字符串为null或空,或者您的url不以尾部斜杠或http开头。例如,在我的情况下,如果我给loginurl = my-login.html(这里我删除了斜杠),我在应用程序启动时遇到了类似的错误。因此,url必须是开始时使用斜杠或绝对使用协议http(s)开始的相对路径。 – Shailendra