2019独角兽企业重金招聘Python工程师标准>>>

在一个roundtrip中response只能被发出一次,在一些验证码、文件下载中通过httpServletResponse.getOutputStream()和requestOutputStream.write()等方法已将response发出,再return ActionForward时被认为是再发送一次,因而报错。出现这种情况的时候,后面的return将只可以返回null,这可以由httpServletResponse.iscommitted()获知。
代码如下:
public class CheckCode extends BaseAction {private static final long serialVersionUID = 1L;public String execute() throws Exception {String checkCode = String.valueOf(new Random().nextInt(8999)+1000);this.getSession().setAttribute("ImageCode", checkCode);CodeImage.getInstanse().getImage(this.getResponse(), checkCode);/** add by zhangWei Feb 18, 2013 4:38:15 PM Reason : 这里添加一个判断,* 如果response.isCommitted()==true,返回数据会导致再次发送一次response,* 导致出现:Response already committed异常,返回null解决此问题*/return this.getResponse().isCommitted()?null:SystemStaticConstant.SUCCESS;}
}

在CodeImage.getInstanse().getImage(this.getResponse(), checkCode);中有这么一行代码:

ImageIO.write(image, "JPEG", response.getOutputStream());

从而导致该问题

转载于:https://my.oschina.net/pangzhuzhu/blog/301775

Action 中 Response already committed 解决办法相关推荐

  1. Android Studio安装教程及安装中出现问题的解决办法

    Android Studio安装教程及安装中出现问题的解决办法 Android Studio安装教程: 安装网址: AndroidDevtools下载:https://developer.androi ...

  2. 异常“只能在执行Render()的过程中调用RegisterForEventValidation”的解决办法(转)...

    当出现下面的异常的时候: 只能在执行Render()的过程中调用RegisterForEventValidation 当出现的异常的提示: 异常详细信息: System.InvalidOperatio ...

  3. 因为返回有true ajax提示进入错误,jquery ajax中error返回错误解决办法

    转自:https://www.jb51.net/article/72198.htm 进入百度搜索此问题,发现有人这么说了一句 Jquery中的Ajax的async默认是true(异步请求),如果想一个 ...

  4. C#界面设计--5--Bitmap.save保存图片时: GDI+ 中发生一般性错误 解决办法

    Bitmap.save保存图片时: GDI+ 中发生一般性错误 解决办法 源程序: var date = DateTime.Now.ToString("yyyy-MM-dd");/ ...

  5. 关于matlab中help无法使用的解决办法(点开后是空白)

    关于matlab中help无法使用的解决办法(点开后是空白) 点击matlab"主页",在上面一排图标中找到"预设" 在出现的页面中最左边一栏点击"帮 ...

  6. Django中的跨域解决办法 基于后端的跨域解决方案

    Django中的跨域解决办法 基于后端的跨域解决方案 1 何为跨域 在浏览器中,只要发送请求的URL的协议.域名.端口号这三者中的任意一个与当前页面地址的协议.域名.端口号不同,则称之为跨域.当发生这 ...

  7. 小程序textarea在ios中内边距的解决办法

    小程序textarea在ios中内边距的解决办法 官方文档上面有一个 disable-default-padding 属性去除在ios上面的内边距

  8. 经验:MathType公式在Word中显示不全的解决办法

    经验:MathType公式在Word中显示不全的解决办法 更新历史 20190903: 首次发布 注:本文对应的MathType的版本为:7.4.2.480,Microsoft Word的版本为:20 ...

  9. ora-01652:无法通过128(在表空间space中)扩展temp段解决办法

    ora-01652:无法通过128(在表空间space中)扩展temp段解决办法.这种情况一看是当前用户所在的表空间达到32G大小上限,需要增加一个新的表空间 一.查询当前用户表空间 select u ...

最新文章

  1. 运行bert模型报错No module named ‘tensorflow.contrib‘
  2. min-height最小高度的实现(兼容IE6、IE7、FF)
  3. php 去除中间空格
  4. linux rz批量上传
  5. bbb sdk6编译流程
  6. 【HihoCoder - 1502】最大子矩阵(二维前缀和,尺取)
  7. html页面代码重用-document writeln
  8. Python 基础知识 D7
  9. xuperchain部署合约Select utxo error, details:NOT_ENOUGH_UTXO_ERR
  10. 数据资产管理及数据管控体系建设思路
  11. python爬微博数据合法吗_爬取新浪微博数据(python)
  12. 刷题——必备十二大网站
  13. CSDN——缩进两个字符
  14. 诺贝尔获奖者中村修二:东亚教育问题的根源在哪?
  15. 江苏小高考计算机难吗,江苏小高考成绩
  16. app做好后如何上线_手机APP开发后如何上架?
  17. 100个python算法超详细讲解:掷骰子
  18. 【PHP兴趣部落-08】PHP中时区设置的三种方法(timezone)
  19. 科技爱好者的极致玩物——六足机器人HEXA京东众筹启动,消费级机器人的新时代已至...
  20. halcon例程学习笔记(11) 一维码、二维码识别

热门文章

  1. ZTE EPON新添加终端设备数据配置
  2. 摆地摊创业赚钱完全详细攻略
  3. Windows系统“无法打开”故障解决方法之一
  4. 同是程序员,不小心发现优点在于工作上10来年都保持【积极主动】的心态
  5. CBinsight | 分析101个创业失败案例,我们总结了20大失败原因
  6. 【HDOJ】4333 Revolving Digits
  7. Microsoft Exchange Server 2010测试四成员DAG
  8. VMware 使用 OVF 模版部署虚拟机
  9. 上线随想之2011-03-27
  10. 60个开发者不容错过的免费资源库