问题描述
<bean id="loginLogAuthenticationSuccessHandler" class="org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler"><property name="defaultTargetUrl" value="/index.action"></property></bean>这样子配置的时候 登陆成功跳转不到这个action里面去,这个地址 绝对有效不可否认。直接写<property name="defaultTargetUrl" value="/index.jsp"></property>就直接跳过去了,但是我的页面全部在web-inf下面 所有希望用action来跳转。请指点指点,非常感谢! <security:http auto-config="false" access-denied-page="/403.jsp"老是跳转到这个403的页面了。不只为何
解决方案
1.首先检查springsecurity的filter拦截了哪些路径,一般配置的是拦截.action,.jsp你检查下,是否你的只拦截了action,没有拦截jsp2.如果第一步检查没问题(拦截了jsp、action后缀的url),那么继续检查index.action是否设置了权限,如果没有设置权限,那么不可能跳转到4033.如果设置了权限,并且你的http的auto-config属性设置了false,那么你应该自定义了很多bean,继续检查你自定义的userDetailService,看看loadUserBy……方法里面是否把相应的权限添加到用户实体的权限列表里了,如果没有,就添加进去。如果一切都这么做了,还是不行,那建议您还是debug,看看在哪里跳出来的
解决方案二:
你可以直接输入index.action在浏览器里,看下有没有进入到Action里,若是没有进入则说明你URL本身就有问题
解决方案三:
有没有做action相关的映射,路径
解决方案四:
照楼上的方式试试,实在不行就跳到一个jsp,jsp里面在用js location.url跳转到action