项目中使用到了spring security,第一次使用,要和spring mvc结合起来一起使用。项目组里有个同事在弄,登录可以使用,登录后一直报找不到当前user,很烦人。
后来发现,只要在xml文件中配置了不使用filter的链接里,都取不到当前登录的用户信息。举个例子吧,如果在xml文件中配置了如下信息
那么在登录后,在/user/login这个页面上是取不到当前登录用户信息的。
ps:当然,上面举的这个例子有点不太恰当,毕竟没有人会在登录后再跳到login页面的。我们遇到的就是这种情况。
想想也正确,没有经过filter的页面当然不能取到已经经过filter的页面里的登录信息的,如果能取到,那就是一个很大的bug了。
后来发现,只要在xml文件中配置了不使用filter的链接里,都取不到当前登录的用户信息。举个例子吧,如果在xml文件中配置了如下信息
<intercept-url pattern="/user/login" filters="none"/>
那么在登录后,在/user/login这个页面上是取不到当前登录用户信息的。
ps:当然,上面举的这个例子有点不太恰当,毕竟没有人会在登录后再跳到login页面的。我们遇到的就是这种情况。
想想也正确,没有经过filter的页面当然不能取到已经经过filter的页面里的登录信息的,如果能取到,那就是一个很大的bug了。