我在struts.xml里把拦截器添加到了新的拦截器栈,命名了一个package名,然后我在一个子的struts-action-index.xml里继承了这个package做登录验证,并且程序执行时已经进入了拦截器类,并且执行完了类里的代码,返回了Action.Login,为什么通过全局返回处理页面没有跳转到登录页面
<package name="struts-default-json" extends="struts-default">
<!-- 返回json类型数据 -->
<result-types>
<result-type name="json" class="org.apache.struts2.json.JSONResult" />
</result-types>
<!-- 自动把页面传来的json解析成action中的对象 -->
<interceptors>
<interceptor name="json"
class="org.apache.struts2.json.JSONInterceptor" />
<interceptor name="checkLogin"
class="com.gtjc.interceptor.CheckInterceptor"/>
<interceptor-stack name="myDefaultStack">
<interceptor-ref name="checkLogin"/>
<interceptor-ref name="json" />
<interceptor-ref name="defaultStack" />
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="myDefaultStack" />
<!-- 定义全局返回处理 -->
<global-results>
<result name="login" >/gtjc/login/jump.jsp</result>
</global-results>
</package>
public String intercept(ActionInvocation in) throws Exception {
System.out.println("进入拦截器");
User user=(User)ServletActionContext.getRequest().getSession().getAttribute("user");
if(user==null ){
return Action.LOGIN;
}else{
return in.invoke();
}
}