首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

STUTS2 上载 getOutputStream() has already been called for this response错误的原因

2012-12-27 
STUTS2 下载 getOutputStream() has already been called for this response异常的原因public String exce

STUTS2 下载 getOutputStream() has already been called for this response异常的原因

public String excel() throws Exception{initRequest();//查询IDString queryId = request.getParameter("queryId");RequestParamters requestParamters = new RequestParamters(request, false);HSSFWorkbook wb = null;try {wb = publicSrv.excel(queryId, getSqlColumns(queryId), requestParamters);} catch (Exception ex) {ex.printStackTrace();}HttpServletResponse response = getResponse();OutputStream os = null;try {QueryConfig queryConfig = ConfigQuery.getQueryConfig(queryId);String title = null;if(null != queryConfig){title = queryConfig.getExcelTitle();}if(StrUtils.isEmpty(title)){title = "无标题";}os = response.getOutputStream();// 取得输出流response.reset();// 清空输出流response.setHeader("Content-disposition","attachment;filename="+new String((title).getBytes(),"ISO8859_1")+".xls");// 设定输出文件头response.setContentType("application/msexcel");// 定义输出类型wb.write(os);} catch (Exception e) {e.printStackTrace();}finally{try {os.flush();os.close();} catch (IOException e) {}}return null;}

如果action的返回写成
return SUCCESS;
在tomcat6.0.14的版本会出现
getOutputStream() has already been called for this response
,在tomcat6.0.28中没有,解决办法是action最后必须是
return null;

热点排行