Struts2 拦截器拦截登陆流程,如果用户没有登陆,执行了return Action.LOGIN 怎么不跳到我配置的页面去?
这是我的拦截器:ObjectloginUser=session.get("currentUser");if(null==loginUser){returnAction.L...
这是我的拦截器:
Object loginUser = session.get("currentUser");
if(null == loginUser)
{
return Action.LOGIN;
}
并且执行了 return Action.LOGIN;
我的struts.xml的配置如下:
<struts>
<package name="soqs_system-default" extends="json-default">
<!--配置登陆的拦截器 -->
<interceptors>
<interceptor name="loginInterceptor" class="com.soqs.interceptor.LoginInterceptor"></interceptor>
<interceptor-stack name="soqsStack">
<interceptor-ref name="loginInterceptor"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 设置默认拦截器 -->
<default-interceptor-ref name="soqsStack"></default-interceptor-ref>
<!-- 指定默认响应处理的Action -->
<global-results>
<result name="error">/error.jsp</result>
<result name="login">/login.jsp</result>
</global-results>
<action name="teacher_*" class="teaManagerAction" method="{1}">
<result type="json"></result>
</action>
<action name="login" class="loginAction" method="login">
<!-- <result name="success" type="json">
<param name="root">ok</param>
</result>
<result name="login">/login.jsp</result>-->
</action>
</package>
</struts>
请问这是怎么回事啊?
我没分了! 各位大侠就当帮帮小弟吧。。。。。 展开
Object loginUser = session.get("currentUser");
if(null == loginUser)
{
return Action.LOGIN;
}
并且执行了 return Action.LOGIN;
我的struts.xml的配置如下:
<struts>
<package name="soqs_system-default" extends="json-default">
<!--配置登陆的拦截器 -->
<interceptors>
<interceptor name="loginInterceptor" class="com.soqs.interceptor.LoginInterceptor"></interceptor>
<interceptor-stack name="soqsStack">
<interceptor-ref name="loginInterceptor"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 设置默认拦截器 -->
<default-interceptor-ref name="soqsStack"></default-interceptor-ref>
<!-- 指定默认响应处理的Action -->
<global-results>
<result name="error">/error.jsp</result>
<result name="login">/login.jsp</result>
</global-results>
<action name="teacher_*" class="teaManagerAction" method="{1}">
<result type="json"></result>
</action>
<action name="login" class="loginAction" method="login">
<!-- <result name="success" type="json">
<param name="root">ok</param>
</result>
<result name="login">/login.jsp</result>-->
</action>
</package>
</struts>
请问这是怎么回事啊?
我没分了! 各位大侠就当帮帮小弟吧。。。。。 展开
展开全部
感觉好像没什么,你的strut2.xml中有没有引入其他配置(xml).看看是不是包的问题。
最好debug一下,在你自己的拦截器里打个断点
最好debug一下,在你自己的拦截器里打个断点
追问
断点我打了的啊, 执行到了return Action.LOGIN语句了的,上面的struts。xml就是所有的内容了。。。。
追答
那把你的拦截器代码贴出来,最好贴几张图,看看你的操作顺序。
ps:
登陆验证,要在拦截器里拦截所以的Action,并对LoginAction放行。
页面的跳转。没登陆,跳到登陆页面,登陆失败,跳到登陆界面,登陆成功,跳到另一个页面。你看看你配置这3中result视图没有。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询