Browse Source

Remove checks and updates to transfer-encoding

Issue: SPR-17393
pull/1994/merge
Rossen Stoyanchev 8 years ago
parent
commit
fdaceeb6c9
  1. 2
      spring-web/src/main/java/org/springframework/http/codec/EncoderHttpMessageWriter.java
  2. 11
      spring-web/src/main/java/org/springframework/http/server/reactive/ReactorServerHttpResponse.java

2
spring-web/src/main/java/org/springframework/http/codec/EncoderHttpMessageWriter.java

@ -118,7 +118,7 @@ public class EncoderHttpMessageWriter<T> implements HttpMessageWriter<T> { @@ -118,7 +118,7 @@ public class EncoderHttpMessageWriter<T> implements HttpMessageWriter<T> {
if (inputStream instanceof Mono) {
HttpHeaders headers = message.getHeaders();
if (headers.getContentLength() < 0 && !headers.containsKey(HttpHeaders.TRANSFER_ENCODING)) {
if (headers.getFirst(HttpHeaders.CONTENT_LENGTH) == null) {
return Mono.from(body)
.defaultIfEmpty(message.bufferFactory().wrap(new byte[0]))
.flatMap(buffer -> {

11
spring-web/src/main/java/org/springframework/http/server/reactive/ReactorServerHttpResponse.java

@ -19,7 +19,6 @@ package org.springframework.http.server.reactive; @@ -19,7 +19,6 @@ package org.springframework.http.server.reactive;
import java.nio.file.Path;
import io.netty.buffer.ByteBuf;
import io.netty.handler.codec.http.HttpHeaderNames;
import io.netty.handler.codec.http.HttpResponseStatus;
import io.netty.handler.codec.http.cookie.Cookie;
import io.netty.handler.codec.http.cookie.DefaultCookie;
@ -49,16 +48,11 @@ class ReactorServerHttpResponse extends AbstractServerHttpResponse implements Ze @@ -49,16 +48,11 @@ class ReactorServerHttpResponse extends AbstractServerHttpResponse implements Ze
public ReactorServerHttpResponse(HttpServerResponse response, DataBufferFactory bufferFactory) {
super(bufferFactory, initHeaders(response));
super(bufferFactory, new HttpHeaders(new NettyHeadersAdapter(response.responseHeaders())));
Assert.notNull(response, "HttpServerResponse must not be null");
this.response = response;
}
private static HttpHeaders initHeaders(HttpServerResponse channel) {
channel.responseHeaders().remove(HttpHeaderNames.TRANSFER_ENCODING);
NettyHeadersAdapter headersMap = new NettyHeadersAdapter(channel.responseHeaders());
return new HttpHeaders(headersMap);
}
@SuppressWarnings("unchecked")
@Override
@ -87,9 +81,6 @@ class ReactorServerHttpResponse extends AbstractServerHttpResponse implements Ze @@ -87,9 +81,6 @@ class ReactorServerHttpResponse extends AbstractServerHttpResponse implements Ze
@Override
protected void applyHeaders() {
if (getHeaders().getContentLength() == -1) {
this.response.chunkedTransfer(true);
}
}
@Override

Loading…
Cancel
Save