diff --git a/java/org/apache/coyote/http11/AbstractHttp11Processor.java b/java/org/apache/coyote/http11/AbstractHttp11Processor.java index 3ce21657414b..3c5a194b75ed 100644 --- a/java/org/apache/coyote/http11/AbstractHttp11Processor.java +++ b/java/org/apache/coyote/http11/AbstractHttp11Processor.java @@ -816,7 +816,6 @@ public final void action(ActionCode actionCode, Object param) { InputFilter savedBody = new SavedRequestInputFilter(body); savedBody.setRequest(request); - @SuppressWarnings("unchecked") AbstractInputBuffer internalBuffer = (AbstractInputBuffer) request.getInputBuffer(); internalBuffer.addActiveFilter(savedBody); @@ -1378,10 +1377,11 @@ private void prepareResponse() { } MimeHeaders headers = response.getMimeHeaders(); - // A SC_NO_CONTENT (204) response may include entity headers - if (!entityBody && statusCode != 204) { + if (!entityBody) { response.setContentLength(-1); - } else { + } + // A SC_NO_CONTENT response may include entity headers + if (entityBody || statusCode == 204) { String contentType = response.getContentType(); if (contentType != null) { headers.setValue("Content-Type").setString(contentType);