diff --git a/java/org/apache/coyote/http11/Http11Processor.java b/java/org/apache/coyote/http11/Http11Processor.java
index 2881aba0b276..308df04dc2ca 100644
--- a/java/org/apache/coyote/http11/Http11Processor.java
+++ b/java/org/apache/coyote/http11/Http11Processor.java
@@ -847,6 +847,11 @@ protected final void prepareResponse() throws IOException {
(outputFilters[Constants.VOID_FILTER]);
entityBody = false;
contentDelimitation = true;
+ if (statusCode == 205) {
+ // RFC 7231 requires the server to explicitly signal an empty
+ // response in this case
+ response.setContentLength(0);
+ }
}
MessageBytes methodMB = request.method();
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 1805b80fc110..bde8e6a92a7c 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -57,6 +57,10 @@
o.a.c.connector.CoyoteAdapter#parseSessionCookiesId
.
Patch provided by John Andrew (XUZHOUWANG) via Github. (violetagg)
+
+ 61086: Explicitly signal am empty request body for HTTP 205
+ responses. (markt)
+