首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ToolTwist应用程序中出现“响应提交后无法转发”错误的可能原因是什么

在ToolTwist应用程序中出现“响应提交后无法转发”错误的可能原因是什么
EN

Stack Overflow用户
提问于 2012-10-18 15:42:27
回答 1查看 105关注 0票数 1

在生产环境中运行ToolTwist应用程序时,我遇到了这些错误。这似乎经常发生。可能导致这些堆栈跟踪的代码错误是什么?

代码语言:javascript
复制
2012-02-13 11:00:04,242 ERROR ServletUiModule - Error in Servlet tooltwist.ecommerce.RoutingUIM.doPost():
java.lang.IllegalStateException: Cannot forward after response has been committed
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:312)
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-18 17:38:42

答案A

HttpServlet有两个用于获取输出流的变体- response.getWriter()和response.getOutputStream()。在我们的例子中,我们使用uh.getResponse()来获取响应对象。

有几条规则-

可以使用这些方法中的一种。

2.选择的方法不能调用两次。

一旦你有了输出对象,不管你得到的是写入器还是输出流,一旦你关闭了它,你就不能再使用它,也不能再得到另一个。

简而言之,编写servlet输出是一次性操作。你从servlet获取对象,写出你的返回值。

答案B

我似乎还记得有一种情况,您正在写入输出,但随后错误处理程序开始处理异常,并且错误页面在创建进一步的输出时出现问题。任何用来处理错误的页面都必须有明确的errorpage标签(我记不起确切的标签了)。

回答C

一旦您向servlet的输出中写入了一些内容,就不能在不收到此错误的情况下转发到另一个页面。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12949549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档