diff --git a/independent-projects/resteasy-reactive/server/vertx/src/main/java/org/jboss/resteasy/reactive/server/vertx/ResteasyReactiveOutputStream.java b/independent-projects/resteasy-reactive/server/vertx/src/main/java/org/jboss/resteasy/reactive/server/vertx/ResteasyReactiveOutputStream.java index 701d64586253f..5a9a54a58ccfd 100644 --- a/independent-projects/resteasy-reactive/server/vertx/src/main/java/org/jboss/resteasy/reactive/server/vertx/ResteasyReactiveOutputStream.java +++ b/independent-projects/resteasy-reactive/server/vertx/src/main/java/org/jboss/resteasy/reactive/server/vertx/ResteasyReactiveOutputStream.java @@ -226,10 +226,12 @@ private void prepareWrite(ByteBuf buffer, boolean finished) throws IOException { if (!committed) { committed = true; if (finished) { - if (buffer == null) { - context.serverResponse().setResponseHeader(HttpHeaderNames.CONTENT_LENGTH, "0"); - } else { - context.serverResponse().setResponseHeader(HttpHeaderNames.CONTENT_LENGTH, "" + buffer.readableBytes()); + if (context.serverResponse().getResponseHeader(HttpHeaderNames.CONTENT_LENGTH.toString()) == null) { + if (buffer == null) { + context.serverResponse().setResponseHeader(HttpHeaderNames.CONTENT_LENGTH, "0"); + } else { + context.serverResponse().setResponseHeader(HttpHeaderNames.CONTENT_LENGTH, "" + buffer.readableBytes()); + } } } else { var contentLengthSet = contentLengthSet();