Cannot forward after response has been committed
2016-07-24 21:15
459 查看
在写servelt实现文件下载的时候,提示如下错误
<span style="white-space:pre"> </span>Cannot forward after response has been committed从错误的含义上来看是因为重复提交了已经提交的请求,于是回去看代码,发现了如下问题,
catch (FileUploadException e) {
e.printStackTrace();
request.setAttribute("errormessage", e.getMessage());
request.getRequestDispatcher("loadinfo.down").forward(request, response);//*****
}
request.getRequestDispatcher("loadinfo.down").forward(request, response);//*****
在一开始编写的时候,我以为在如果在catch里面进行请求的重定向了,就不会执行try-catch 块后面的语句了,其实不然。
解决方法有两种,一种是在catch里面加上return命令。
catch (FileUploadException e) {
e.printStackTrace();
request.setAttribute("errormessage", e.getMessage());
request.getRequestDispatcher("loadinfo.down").forward(request,
response);
return ;
}
request.getRequestDispatcher("loadinfo.down").forward(request,
response);
return;另外一种是把请求重定向放到finally 里面
<span style="white-space:pre"> </span>Cannot forward after response has been committed从错误的含义上来看是因为重复提交了已经提交的请求,于是回去看代码,发现了如下问题,
catch (FileUploadException e) {
e.printStackTrace();
request.setAttribute("errormessage", e.getMessage());
request.getRequestDispatcher("loadinfo.down").forward(request, response);//*****
}
request.getRequestDispatcher("loadinfo.down").forward(request, response);//*****
在一开始编写的时候,我以为在如果在catch里面进行请求的重定向了,就不会执行try-catch 块后面的语句了,其实不然。
解决方法有两种,一种是在catch里面加上return命令。
catch (FileUploadException e) {
e.printStackTrace();
request.setAttribute("errormessage", e.getMessage());
request.getRequestDispatcher("loadinfo.down").forward(request,
response);
return ;
}
request.getRequestDispatcher("loadinfo.down").forward(request,
response);
return;另外一种是把请求重定向放到finally 里面
相关文章推荐
- javaweb之web入门基础
- Java Servlet生成JSON格式数据并用jQuery显示的方法
- jsp传参 servlet接收中文乱码问题的解决方法
- jsp和servlet中实现页面跳转的方式实例总结
- JavaWeb文件上传与下载功能解析
- java servlet结合mysql搭建java web开发环境
- Servlet与JSP间的两种传值情况
- JSP、Servlet中get请求和post请求的区别总结
- jsp和servlet的区别探讨
- Struts2访问servlet分享
- java中Servlet处理乱码的方法
- Servlet 过滤器详细介绍
- JavaWeb文件上传入门教程
- JSP+Servlet+JavaBean实现登录网页实例详解
- servlet中session简介和使用例子
- 在Jsp Servlet中页面重新定向总汇
- JSP使用Servlet作为控制器实现MVC模式实例详解
- JSP使用Servlet过滤器进行身份验证的方法
- Servlet动态网页技术详解