我已经在我的应用程序中实现弹簧的安全,我的弹簧security.xml文件有以下形式登录标记后默认目标网址。春季安全不打成功authtication
<form-login login-page="/login.htm" default-target-url="/dashboard.htm"
authentication-failure-url="/login.htm?error=true"
authentication-success-handler-ref="authenticationSuccessHandler" />
我想从/login.htm登录,成功验证后我希望用户点击dashboard.htm。 Everythig工作正常,除了成功的身份验证后,它不会击中/dashboard.htm,但命中上下文......但如果我手动在url中键入dashboard.htm然后一切工作正常...是的..我有执行authticationSuccessHandler。
试图激活调试LEVE春季安全,看看到底是怎么回事之一。你在使用其他过滤器吗?作为urlrewrite? – jddsantaella 2012-03-12 22:35:21
我不是Spring Security的专家,但为什么你同时拥有default-target-url和authentication-success-handler?你可以删除默认目标网址,做在成功处理程序重定向 – Blitzkr1eg 2012-03-13 07:43:14
Blitzkr1eg是正确的,你不应该有两种认证成功处理程序-ref和缺省目标URL。从authentication-success-handler-ref描述:“应该用于处理成功的认证请求的AuthenticationSuccessHandler bean的引用。**不应该与default-target-url(或者always-use-default -target-URL)作为 实施应始终与导航处理的后续目的地**” – Dani 2012-03-13 15:05:47