2 qq 23214563 qq_23214563 于 2014.12.09 09:21 提问

ssh的struts2拦截器拦截请求后页面为什么没有跳转

我在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();
        }

    } 

1个回答

caozhy
caozhy   Ds   Rxr 2014.12.09 11:58

LoginAction有没有写对,参考

http://blog.csdn.net/java_cxrs/article/details/5514340

Csdn user default icon
上传中...
上传图片
插入图片