`

Cannot forward after response has been committed【解决】

阅读更多

java.lang.IllegalStateException:Cannot forward after response has been committed异常出现的原因是因为

Java代码 复制代码
  1. servlet.getServletContext().getRequestDispatcher("/DateUpdatePage.do").forward(request, response);  
servlet.getServletContext().getRequestDispatcher("/DateUpdatePage.do").forward(request, response);

这个转发下面的必须要有一个return来返回,是不是必须用null,还没搞清楚
      return null ;

这样写就没的问题了:

Java代码 复制代码
  1. servlet.getServletContext().getRequestDispatcher("/DateUpdatePage.do").forward(request, response);   
  2.       return null ;  
servlet.getServletContext().getRequestDispatcher("/DateUpdatePage.do").forward(request, response);
      return null ;



-------------------------------------------------------
下面为08.1.20修改

对于Cannot forward after response has been committedCannot forward after response has been committed这个错误,有了更加深刻的认识

这个是错误是由于response多次提交或者是由于有页面显示后仍然含请求转向产生的,就是说程序在return之前就已经执行了跳转或者执行过response,之后遇到return的话,程序想再次执行跳转,也就是重定向,这时功能也许会实现了,但是控制台会报错,所以控制好跳转是很重要的,我现在的解决办法还是加return null,还没找到更好的解决办法,return null就不能转到另外的页面,成功或失败,继续关注吧,我一定能找到可以跳转页面而又不报错的办法

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics