在tomcat中传递警告响应头

在tomcat中传递警告响应头,tomcat,tomcat8,Tomcat,Tomcat8,Tomcat 8_32 视窗7 爪哇8_51 RestEasy 3.0.11.1决赛 GWT 2.7.0(Jetty Jetty-9.3.5.v20151012) Servlet代码对另一个Servlet(同一容器)进行RestEasy调用——第二个Servlet在响应时设置“警告”HTTP头。希望在第一个servlet中访问它,但在Tomcat中运行时,不包括该标头 在第一个servlet中获取标头的代码: 对象头=((ClientResponseFailure)e.getResponse()

Tomcat 8_32

视窗7

爪哇8_51

RestEasy 3.0.11.1决赛

GWT 2.7.0(Jetty Jetty-9.3.5.v20151012)

Servlet代码对另一个Servlet(同一容器)进行RestEasy调用——第二个Servlet在响应时设置“警告”HTTP头。希望在第一个servlet中访问它,但在Tomcat中运行时,不包括该标头

在第一个servlet中获取标头的代码:

对象头=((ClientResponseFailure)e.getResponse().getResponseHeaders().get(“警告”)

还尝试了:getHeaders()、getStringHeaders()和getHeaderString()

在IntelliJ(15.0.4)中使用Jetty以superdev模式运行GWT时,上面的命令返回一个列表,其中包含一个包含警告字符串的项。远程调试Tomcat时,该调用返回null

将其添加到web应用程序xml中,并尝试了Tomcat conf/web.xml

<filter>
    <filter-name>CorsFilter</filter-name>
    <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
    <init-param>
        <param-name>cors.exposed.headers</param-name>
        <param-value>Warning</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>CorsFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

克斯菲尔特
org.apache.catalina.filters.CorsFilter
cors.exposed.headers
警告
克斯菲尔特
/*
还尝试了cors.allowed.headers


有什么指针吗?

好的,在响应提交时,Tomcat和Jetty之间似乎存在差异。如果我把东西订成。。。setStatus、setHeader、getWriter—然后它在这两者上都起作用


我在设置警告头之前有了getWriter,但此时已经提交了响应,因此无法添加头。出于某种原因,Jetty对此没有问题。

好的,在提交响应时,Tomcat和Jetty之间似乎存在差异。如果我把东西订成。。。setStatus、setHeader、getWriter—然后它在这两者上都起作用


我在设置警告头之前有了getWriter,但此时已经提交了响应,因此无法添加头。出于某种原因,Jetty可以这样做。

Fiddler[或您选择的代理]的响应是什么样的?你看到标题了吗?好主意-但我不能让Fiddler显示响应标题,直到所有事情都完成(这都在同一个容器中)。我注意到,在设置了内容长度和警告之后,响应头仍然只包含set Cookie和X-Frame-Options。当它到达第二个servlet时,它具有内容长度、日期、服务器、Set Cookie和X-Frame-Options。如前所述,在Jetty上,一切正常(即,我得到所有标题)。明白了……没有意识到它没有“越过电线”。Fiddler[或您选择的代理]中的响应是什么样的?你看到标题了吗?好主意-但我不能让Fiddler显示响应标题,直到所有事情都完成(这都在同一个容器中)。我注意到,在设置了内容长度和警告之后,响应头仍然只包含set Cookie和X-Frame-Options。当它到达第二个servlet时,它具有内容长度、日期、服务器、Set Cookie和X-Frame-Options。如前所述,在Jetty上,一切正常(即,我得到所有标题)。明白了…没有意识到它没有“过线”。