经常发生,但不是每次都发生,第一次提交时就返回false,
有可能是什么原因呢

解决方案 »

  1.   

    第一次访问的时候,一般都是先saveToken,不执行isTokenValid,在返回到jsp。
    第2次访问的时候,先isTokenValid,在resetToken,在saveToken..
    public class TokenAction extends DispatchAction
    {
    //第一次访问执行这个
    public ActionForward unspecified(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception 
    {
    saveToken(request);
    return mapping.findForward("success");
    }
    //之后就执行这个
    public ActionForward test(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception 
    {
    if(isTokenValid(request))
    {
    saveToken(request);
    System.out.println("success");
    return mapping.findForward("success");
    }
    else
    {
    resetToken(request);
    saveToken(request);
    System.out.println("failure");
    return mapping.findForward("failure");
    }
    }

    }