这是我在做Excel表格导出的时候碰见得一个问题,当时很头疼,所以写一下防止下次踩坑。
首先根据这个错误关键信息,得知是错误产生原因是response.getWriter()和response.getOutputStream()等接口在调用时发生了冲突导致的。
后来也去找了各路大神写的解决方案,但是大部分都说的时可能在前端JSP页面调用了response.getOutputStream(),但是我们是前后端分离,根本不在这样的事情,而且我只是一个get方法页面根本就不需要调用方法。那么问题来了,既然不是前端的问题,那一定是后端的问题了。
只能祭出debug,但是又出现了一个有意思的事情,因为他根本就没进入我的controller。
这个时候就引人深思了。所以我想到是不是因为AOP里面有问题
这是改过之后的代码,当时忘了截图。
发现问题是因为我们之前在AOP里加了fastJSON序列化对象,所以他会调用一次getObjectWritter,但是就是这么个原因导致我的导出一点也不能用。
这次事件被我称为fastJSON绿了response.getOutPutStream()事件