1.异常场景:

  在进行将数据用word导出或者Excel导出的时候。抛出的异常getOutputStream() has already been called for this response

导致的原因:

  出现这个异常是由于多次调用了response.getOutputStream() 或者在代码中既用了response.write(),也用了getOutputStream()导致出现的冲突,所引起的异常。在我的代码中,导出文件是采用了getOutputStream()的方式,而在统一异常处理中是使用了out.write()的方式向页面中输出错误信息引起的。

解决方案:所以只需改成相同的方式就可以了。或者在调用玩getOutputStream()方法完成时,显式的关闭这个输出流就可以。

2.异常场景:

  在进行将数据用word导出或者Excel导出的时候。抛出的异常org.apache.catalina.connector.ClientAbortException:java.io.IOException。后端代码中没有错误,在前端页面中也没有发现其他错误。就是到点击导出按钮时,有时会抛出这个异常,有时不会抛出这个异常。随机出现。

导致原因:

  出现这个异常是由于在向页面中输出信息的过程中,信息还没用输出完成,页面就已经关闭了或页面已经刷新了,导致输出流中断异常。而我的场景时,点击导出后,弹出框将会关闭,而在这个过程中,后台响应没有那么快,输出过程中窗口已经关闭了。

解决方案:

  1.前端页面中采用Ajax异步调用的方式,待页面完成响应完成后,将弹出框关闭;

  2.最笨的方法就是不关闭,禁用关闭按钮,待响应完成后,开启按钮,让用户关闭。

  

最新文章

  1. EnumHelper.cs枚举助手(枚举描述信息多语言支持)C#
  2. HTML之form表单和input系列
  3. 程序测试--DOS界面测试C程序
  4. 【Tomcat】tomcat报连接超时错误
  5. Word Break
  6. 发现一个百度的密码。。。记最近一段时间的php感想
  7. xcoj 1208 矩阵
  8. LDA(转发)
  9. Coursera台大机器学习课程笔记9 -- Logistic Regression
  10. 利用svg技术实现在线动画演示
  11. oracle 分组后取每组第一条数据
  12. ionic的安装
  13. 跟着刚哥梳理java知识点——流程控制(六)
  14. bower使用入门
  15. Docker跨主机通信(九)--技术流ken
  16. NLog使用整理
  17. 【C++ Primer | 15】继承的构造函数
  18. Vue2 第二天学习
  19. Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
  20. VMware(虚拟机) 12版安装深度linux系统

热门文章

  1. 解决List遍历删除元素提示ConcurrentModificationException
  2. 解决数据库连接池连接mysql时,每隔8小时mysql自动断开所有连接的问题
  3. WPF下如何使用TTF字体
  4. 【故障公告】redis 服务器宕机引发博客站点故障
  5. Shell 脚本之 MySQL 一键安装及基本配置(几分钟搞定)
  6. Linux账号和权限管理(第二回合)
  7. win10 sql2008r2网页不能使用数据,需要开启端口1433
  8. 【剑指offer】22. 链表中倒数第k个节点
  9. React 组件间通信 总结
  10. Spring RestTemplate 之get请求