Tomcat 8_32
Windows 7
Java 8_51
RestEasy 3.0.11最后
GWT 2.7.0 (码头码头-9.3.5.v20151012)
Servlet代码对另一个servlet (同一个容器)进行RestEasy调用--第二个servlet在响应时设置‘警告’header。希望在第一个servlet中访问它,但在Tomcat中运行时,不包括该头。
在第一个servlet中获取头部的代码:
对象标头=(( e).getResponse().getResponseHeaders().get("Warning");)ClientResponseFailure)
也尝试过: 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>也尝试过cors.allowed.headers。
有什么指示吗?
发布于 2016-03-08 19:25:37
好的,这似乎是Tomcat和Jetty在何时提交响应的区别。如果我按.setStatus,setHeader,getWriter --然后两者都适用。
我在set警告头之前有了getWriter,但是响应已经在那时提交了,所以不能添加任何标题。出于某种原因,Jetty认为这很好。
https://stackoverflow.com/questions/35845335
复制相似问题