除了其他一些东西之外,我还构建了一个结合了Spring Security和GWT的小型示例应用程序。您可以在以下网址找到它:
https://github.com/steinsag/gwt-maven-scala
登录和身份验证工作正常。在生成的GWT页面中,我插入了一个Logout链接。它应该指向Spring Security注销链接。我使用了following GWT code:
Anchor logoutLink = new Anchor("Logout");
logoutLink.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Window.Location.assign("j_spring_security_logout");
}
});
如果用户单击该链接,则会话终止并且用户已注销。但是,用户不会转发到登录页面。我怎样才能做到这一点?据我所知,在j_spring_security_logout之后,我无法将他转发到另一个URL。
任何想法如何实现?
答案 0 :(得分:3)
您可以在spring security配置中指定logout url
<http auto-config='true'>
...
<logout logout-success-url="/login.jsp"/>
...
</http>
答案 1 :(得分:0)
虽然我在j_spring_security_logout页面上获得了404并且浪费了太多时间来寻找解决方案,但我遇到了类似的问题。想在这里分享,以防有人面临类似的问题。我不得不改变
Window.Location.assign("j_spring_security_logout");
到
Window.Location.replace(GWT.getHostPageBaseURL()+"j_spring_security_logout");
问题已解决。