700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > java redirect 超时_java – Spring Security 3.0重定向到超时的页面

java redirect 超时_java – Spring Security 3.0重定向到超时的页面

时间:2022-07-15 22:32:41

相关推荐

java redirect 超时_java  –  Spring Security 3.0重定向到超时的页面

我正在使用Spring Security 3.0.6,我希望能够执行以下操作:

如果用户在页面上并且发生会话超时,则用户将进入登录页面并在有效登录时重定向回到发生超时的页面.

我目前在security.xml文件中有以下内容.

login-page="/login"

default-target-url="/main"

always-use-default-target="false"

authentication-failure-url="/login.html?error=true"

authentication-success-handler-ref="authenticationSuccessHandler" />

这是我的身份验证类:

public class AuthenticationSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {

public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException {

String url = "";

HttpSession session = request.getSession(false);

if (session != null) {

SavedRequest savedRequest = (SavedRequest) session.getAttribute(WebAttributes.SAVED_REQUEST);

if (savedRequest != null) {

url = savedRequest.getRedirectUrl();

}

}

System.out.println("url: "+ url);

if (url == "") {

response.sendRedirect(request.getContextPath()+"/main");

} else {

response.sendRedirect(url);

}

}

}

我通过javascript将用户发送回登录页面:

window.location.href="/login";

我的身份验证类中的url始终为null.我怎样才能使这个工作让Spring重定向到正确的页面?

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。