2012-02-22 103 views
2

我有一个Grails 2.0.1 jQuery Mobile应用程序,这是我第一次使用Spring Security。我遵循彼得Ledbrook的post的优秀指示。Grails jQuery Mobile应用程序中的Spring Security刷新错误

登录成功后,使用该应用程序和安全控制工作正常。但是,如果用户执行浏览器刷新,则会发生AuthenticationServiceException。

登录后,在浏览器中显示的网址是我的应用程序的根目录加/ j_spring_security_check

http://localhost:8080/myapp/j_spring_security_check 

这是为什么追加到我的网址是什么?如果我手动编辑URL并指向应用程序的根目录,则浏览器重新加载没有任何问题。

+0

我会建议在org.springframework.security手摇记录...让我知道它说 – chrislovecnm 2012-02-23 01:48:41

+0

没有站出来与调试级别登录。下面是我在寻找到一个警告,但它并不像它的相关:ApplicationContext的不servlet上下文 – SeattleStephens 2012-02-25 20:55:47

+0

是正常BTW的org.codehaus.groovy.grails.APPLICATION_CONTEXT属性中找到的..什么是你的错误何时无法登录? – chrislovecnm 2012-03-01 05:43:00

回答

5

尝试设置data-ajax='false'形成元素

<form id="loginForm" name='f' action="<c:url value='/j_spring_security_check' />" 
       method='POST' data-ajax="false"> 
+0

这对我有用!我非常感谢这一点。我花了几天的时间试图找出为什么这不起作用。我必须将其添加到我的其他页面

也张贴。 – 2013-01-10 16:00:28

1

伟大的答案。请注意,在使用Spring Security时,应用data-ajax ='false'也适用于jQuery Mobile“注销”或“注销”按钮。即:

<a href="j_spring_security_logout" data-role="button" data-direction="reverse" data-transition="fade" class="ui-btn-left" data-ajax="false">Sign Out</a> 
相关问题