summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorn.christian@seime.no>2017-12-11 11:33:34 +0100
committerGitHub <noreply@github.com>2017-12-11 11:33:34 +0100
commitd97a853be75ff2dbcf71f2d0c4e5be95486693fc (patch)
tree4f3d8c8f69dec6e5b3ebda7111d39cfbf36916f1
parentc64cebe292f68fc37864827a54751123aec0a5e9 (diff)
parente8dc6ead1f8caf58550fcb7533d6359c2e3ea223 (diff)
Merge pull request #4316 from vespa-engine/bjorncs/jetty-9.4.8
Use Jetty v9.4.8
-rw-r--r--container-dependency-versions/pom.xml2
-rw-r--r--jdisc_http_service/src/main/java/com/yahoo/jdisc/http/server/jetty/ServletResponseController.java3
-rw-r--r--jdisc_http_service/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java8
3 files changed, 7 insertions, 6 deletions
diff --git a/container-dependency-versions/pom.xml b/container-dependency-versions/pom.xml
index 2e23e550352..4d639ceedab 100644
--- a/container-dependency-versions/pom.xml
+++ b/container-dependency-versions/pom.xml
@@ -421,7 +421,7 @@
<findbugs.version>1.3.9</findbugs.version>
<guava.version>18.0</guava.version>
<guice.version>3.0</guice.version>
- <jetty.version>9.4.6.v20170531</jetty.version>
+ <jetty.version>9.4.8.v20171121</jetty.version>
<slf4j.version>1.7.5</slf4j.version>
<!-- These must be kept in sync with version used by current jersey2.version. -->
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));
}