刷新页面获取请求调度程序过滤器给我错误?

时间:2014-12-27 18:17:43

标签: jsp servlets

您好我在/ManagerServlet(ManagerServlet.java)中编写了以下代码

    protected void doPost(HttpServletRequest request, HttpServletResponse response)throws IOException
    String strId=request.getParameter("id");
    Integer id=Integer.parseInt(strId);

    if(id !=null)
    {
        Manager manager=null;
        IAdminDAO dao=AdminDAO.getDAO();
        manager=dao.ManagerGET(id);
        request.setAttribute("manager", manager);
        request.getRequestDispatcher("newManager.jsp").forward(request, response);
    }
    else
    {
        request.getRequestDispatcher("newManager.jsp").forward(request, response);  
    }

    }

这里我要去页面,如果我调用servlet并转到newManager.jsp但是如果我再次刷新jsp页面它将转到servlet ManagerServlet并在Integer.parseInt(strId)获取null Point异常..怎么能我避免了这个问题

1 个答案:

答案 0 :(得分:1)

一个选项是使用get方法而不是post方法将数据发送到servlet。

如果要向servlet发送多个数据,最好使用session(在这种情况下可以刷新而不会丢失数据)。例如,如果要将对象发送到另一个页面/ servlet,请使用session而不是post / get;因为按顺序通过post / get发送对象,例如你应该将你的对象转换为json格式。

注意:当您通过邮寄方式向servlet发送一些信息时,当您刷新此页面时,浏览器会要求您再次发送帖子信息。