【发布时间】:2010-10-01 19:44:45
【问题描述】:
我有一个 servlet,它的请求调度程序包含另一个 servlet。
包含的 servlet 设置我想在 包括 servlet 中读取的标题。因此,我在 include() 方法中传入了一个自定义 HTTPResponse 对象,该方法捕获来自 servlet 的所有反馈活动。
问题是我的自定义响应中没有设置标题。我已经在调试中运行并检查了 Tomcat 用它自己的响应对象包装我的自定义响应对象的样子。 setHeader 调用转到此包装类,并且永远不会传播到我的自定义响应对象。
我想 Tomcat 这样做是为了保护客户端不将标头设置在错误的位置。有趣的是,同样的方法在 Jetty 中的工作方式是我所期望的。
自从我认真地完成 Servlet 以来已经有一段时间了,所以我在这里有点挣扎。我试图弄清楚如何从通过 dispatcher.include() 调用的 servlet 中读取响应标头。
【问题讨论】: