比如我想在servlet里做一个清空session的操作,清空之后弹出一个提示给用户,比如“清空购物车成功!”,应该如何实现,我直接out.print();不成功... 大家帮忙解决一下,代码如下:  public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html;utf-8");
request.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter(); HttpSession session = request.getSession();
session.setAttribute("aFood", null);
out.print("清空购物车成功!");
response.sendRedirect("index.jsp"); out.flush();
out.close();
}

解决方案 »

  1.   

    你输出怎么还能跳转呢?
    out.print("清空购物车成功!");
    response.sendRedirect("index.jsp");out.flush();
    out.close();
    这四句代码就没有意义了。
    你要想跳转到index.jsp并且给出消息提示。
    那就直接在indexjsp去做吧。
      

  2.   

    因为你跳转了,执行时间很短,你根本就看不到提示"清空购物车成功!",而并不是没有把该session清空,你应该再写个连接<a href="index.jsp">回到首页</a>进行手动跳转
      

  3.   

    out.print("<script language=\"javascript\" type=\"text/javascript\"> alert(\"清空购物车成功\");</script>");
    response.sendRedirect("index.jsp");
      

  4.   

    这个是不可能成功的。除非你让线程先停一会,alert可以放在redirect后执行。
      

  5.   

    那就来个ajax异步提交 这样页面就能弹出提示框了...
      

  6.   

    可以考虑直接在点击【清空购物车】操作上,有脚本操作弹出新JSP框,在新页面的开始增加代码段,如doPost()中清空SESSION对象,再写弹出提示信息,确认后,在写关闭当前页操作。后两项全部可以用脚本完成。
    注意,关闭当前新页面前,是否需要将母页面相关信息进行相应修改呢?
      

  7.   

    String js = "<script>alert('清空购物车ok!');</script>";
    response.getWriter.write(js);
      

  8.   

    整个参数带到index.jsp上去显示