读书人

请问关于重复提交有关问题

发布时间: 2012-03-19 22:03:04 作者: rapoo

请教关于重复提交问题
为避免重复提交 使用 struts的 token

为什么System.out.println(this.isTokenValid(request));
打印出来的是 false呢??

Java code
public class CeshiToken extends DispatchAction {        public ActionForward shezhiToken(ActionMapping mapping, ActionForm form,            HttpServletRequest request, HttpServletResponse response)            throws Exception {        this.saveToken(request);        System.out.println("设置token============================");                //为什么这一行打印出来的是false ?????        System.out.println(this.isTokenValid(request)+"~~~~~~~~~~~~~~~~~~~~~");        return mapping.findForward("shezhiToken");    }        public ActionForward zhixingFangfa(ActionMapping mapping, ActionForm form,            HttpServletRequest request, HttpServletResponse response)            throws Exception {        System.out.println(this.isTokenValid(request));        if(this.isTokenValid(request,true)){                        System.out.println("=============执行方法了==============");            this.resetToken(request);        }        System.out.println("返回去了");                return mapping.findForward("chonghuiyemian");    }}


[解决办法]
this.saveToken(request);
会在shezhiToken的页面加 一个 hidden的Token值, 是在shezhiToken跳转的页面
而你的是在未跳转前就isTokenValid 这时候request里面没有Token
[解决办法]
帮顶,顶顶顶顶顶顶顶顶顶

读书人网 >J2EE开发

热点推荐