在Struts2中使用poi进行excel操作下载的时候报getOutputStream() has already been called for this response 错误

在项目中用到了poi这个开源的操作excel文件的jar.
项目中用到struts2容器管理servlet.不是单纯的直接用servlet.      
  workbook.write(os);         
 os.flush();          
 os.close();         
 return "SUCCESS"; 
在我的action中用是这样处理最后的传出.但是报出了: java.lang.IllegalStateException: getOutputStream() has already been called for this response的错误.
Struts2方法之间调用引起的。 
因为:每个方法都返回的是一个Action对象,而response是Action对象参数,
所以就会使response冲突!
 故,将最后的return "SUCCESS"改为 return null .
不将其交由sturts2管理.就不会报异常了

你可能感兴趣的:(OutputStream)