今天项目上遇到了这个问题,求大佬帮忙看一下怎么解决,感激不尽

DoLooop 2019-12-25 10:23:15
[19-12-25 9:00:31:255 CST] 000000a0 ServletWrappe E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0014E: 未捕获到 service() 异常的根本原因 dataware:org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalStateException: SRVE0199E: 已获取了 OutputStream
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:595)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1232)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:781)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:480)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
at encore.meta.filter.RequestParameterFilter.doFilter(RequestParameterFilter.java:78)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:940)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881)
Caused by: java.lang.IllegalStateException: SRVE0199E: 已获取了 OutputStream
at com.ibm.ws.webcontainer.srt.SRTServletResponse.getWriter(SRTServletResponse.java:836)
at net.sf.json.spring.web.servlet.view.JsonView.writeJSON(JsonView.java:150)
at net.sf.json.spring.web.servlet.view.JsonView.renderMergedOutputModel(JsonView.java:141)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303)
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1244)
at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1027)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:971)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
... 38 more

[19-12-25 9:00:31:256 CST] 000000a0 webapp E com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E: [Servlet 错误]-[dataware]: java.lang.IllegalStateException: SRVE0199E: 已获取了 OutputStream
at com.ibm.ws.webcontainer.srt.SRTServletResponse.getWriter(SRTServletResponse.java:836)
at net.sf.json.spring.web.servlet.view.JsonView.writeJSON(JsonView.java:150)
at net.sf.json.spring.web.servlet.view.JsonView.renderMergedOutputModel(JsonView.java:141)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303)
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1244)
at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1027)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:971)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:595)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1232)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:781)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:480)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
at encore.meta.filter.RequestParameterFilter.doFilter(RequestParameterFilter.java:78)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:940)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881)

[19-12-25 9:00:31:256 CST] 000000a0 SRTServletRes W com.ibm.ws.webcontainer.srt.SRTServletResponse setStatus WARNING: Cannot set status. Response already committed.
[19-12-25 9:00:31:257 CST] 000000a0 SRTServletRes W com.ibm.ws.webcontainer.srt.SRTServletResponse addHeader SRVE8094W: 警告:无法设置头。响应已落实。

本地使用tomcat启动项目没问题,但是放到服务器上后,下载word文档和Excel表格时,就会报这个错误,该怎么解决啊,在线等,挺急的
...全文
304 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
stacksoverflow 2019-12-25
  • 打赏
  • 举报
回复
你代码里有没有写getWriter()和getOutputStream()的地方
DoLooop 2019-12-25
  • 打赏
  • 举报
回复
引用 5 楼 stacksoverflow的回复:
查了一下,getWriter()和getOutputStream() 一起用就会报这个错误, 把代码贴上来。 FrameworkServlet.java:982
这个文件是spring框架里的,而且只有500多行
stacksoverflow 2019-12-25
  • 打赏
  • 举报
回复
查了一下,getWriter()和getOutputStream() 一起用就会报这个错误, 把代码贴上来。 FrameworkServlet.java:982
DoLooop 2019-12-25
  • 打赏
  • 举报
回复
引用 2 楼 stacksoverflow的回复:
参考 https://blog.csdn.net/weixin_30526593/article/details/96099378
问题不一样啊,兄弟,我们项目中没有使用jsp,都是java
DoLooop 2019-12-25
  • 打赏
  • 举报
回复
引用 1 楼 yanghaimingg的回复:
在线等,挺急的
参考:https://www.cnblogs.com/welcoming/p/3542375.html
问题不一样啊,兄弟,我们项目中没有使用jsp,都是java
stacksoverflow 2019-12-25
  • 打赏
  • 举报
回复
参考 https://blog.csdn.net/weixin_30526593/article/details/96099378
mtian2020 2019-12-25
  • 打赏
  • 举报
回复
在线等,挺急的
参考:https://www.cnblogs.com/welcoming/p/3542375.html
DoLooop 2019-12-25
  • 打赏
  • 举报
回复
引用 10 楼 stacksoverflow的回复:
[quote=引用 9 楼 DoLooop 的回复:] [quote=引用 7 楼 stacksoverflow 的回复:] 你代码里有没有写getWriter()和getOutputStream()的地方
byte[] b = new byte[1024]; int len; while ((len = is.read(b)) > 0) { response.getOutputStream().write(b, 0, len); } response.getOutputStream().flush(); response.getOutputStream().close(); 只有这段代码里使用了getOutputStream(),没有用getWriter()[/quote] 把getOutputStream()改成getWriter()[/quote] 大佬,改了之后的确不报错了,但是下载的文档中有乱码,不过还是很感谢
stacksoverflow 2019-12-25
  • 打赏
  • 举报
回复
引用 9 楼 DoLooop 的回复:
[quote=引用 7 楼 stacksoverflow 的回复:] 你代码里有没有写getWriter()和getOutputStream()的地方
byte[] b = new byte[1024]; int len; while ((len = is.read(b)) > 0) { response.getOutputStream().write(b, 0, len); } response.getOutputStream().flush(); response.getOutputStream().close(); 只有这段代码里使用了getOutputStream(),没有用getWriter()[/quote] 把getOutputStream()改成getWriter()
DoLooop 2019-12-25
  • 打赏
  • 举报
回复
引用 7 楼 stacksoverflow 的回复:
你代码里有没有写getWriter()和getOutputStream()的地方
byte[] b = new byte[1024]; int len; while ((len = is.read(b)) > 0) { response.getOutputStream().write(b, 0, len); } response.getOutputStream().flush(); response.getOutputStream().close(); 只有这段代码里使用了getOutputStream(),没有用getWriter()
Forever小熊℃ 2019-12-25
  • 打赏
  • 举报
回复
encore.meta.filter.RequestParameterFilter.doFilter(RequestParameterFilter.java:78)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧