diff options
author | Bjørn Christian Seime <bjorncs@oath.com> | 2017-12-08 13:50:12 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@oath.com> | 2017-12-08 13:50:12 +0100 |
commit | e8dc6ead1f8caf58550fcb7533d6359c2e3ea223 (patch) | |
tree | 0ef18e08451b1d1a9c54379e2a8a4d14ae2a94de /jdisc_http_service | |
parent | fc750918ecc48d270d58df0421ea49a5e55f2398 (diff) |
Use Jetty v9.4.8
Upgrade to newest Jetty and add support for empty HTTP header values.
Release notes Jetty: http://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00114.html
Diffstat (limited to 'jdisc_http_service')
2 files changed, 6 insertions, 5 deletions
diff --git a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/server/jetty/ServletResponseController.java b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/server/jetty/ServletResponseController.java index 735bf3ed89a..bc14a063cd1 100644 --- a/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/server/jetty/ServletResponseController.java +++ b/jdisc_http_service/src/main/java/com/yahoo/jdisc/http/server/jetty/ServletResponseController.java @@ -184,8 +184,7 @@ public class ServletResponseController { private static void setHeaders_holdingLock(Response jdiscResponse, HttpServletResponse servletResponse) { for (final Map.Entry<String, String> entry : jdiscResponse.headers().entries()) { - final String value = entry.getValue(); - servletResponse.addHeader(entry.getKey(), value != null ? value : ""); + servletResponse.addHeader(entry.getKey(), entry.getValue()); } if (servletResponse.getContentType() == null) { diff --git a/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java b/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java index 7ed13decbf6..55dec64e967 100644 --- a/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java +++ b/jdisc_http_service/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java @@ -371,6 +371,7 @@ public class HttpServerTest { } // Header with no value is disallowed by https://tools.ietf.org/html/rfc7230#section-3.2 + // Details in https://github.com/eclipse/jetty.project/issues/1116 @Test public void requireThatHeaderWithNullValueIsOmitted() throws Exception { final TestDriver driver = TestDrivers.newInstance(new EchoWithHeaderRequestHandler("X-Foo", null)); @@ -380,13 +381,14 @@ public class HttpServerTest { assertThat(driver.close(), is(true)); } - // Header with no value is disallowed by https://tools.ietf.org/html/rfc7230#section-3.2 + // Header with empty value is allowed by https://tools.ietf.org/html/rfc7230#section-3.2 + // Details in https://github.com/eclipse/jetty.project/issues/1116 @Test - public void requireThatHeaderWithEmptyValueIsOmitted() throws Exception { + public void requireThatHeaderWithEmptyValueIsAllowed() throws Exception { final TestDriver driver = TestDrivers.newInstance(new EchoWithHeaderRequestHandler("X-Foo", "")); driver.client().get("/status.html") .expectStatusCode(is(OK)) - .expectNoHeader("X-Foo"); + .expectHeader("X-Foo", is("")); assertThat(driver.close(), is(true)); } |