Skip default Content-Length if Transfer-Encoding header has been set
Issue: SPR-15212
This commit is contained in:
		
							parent
							
								
									e44533f4c2
								
							
						
					
					
						commit
						9b3131ffba
					
				| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
/*
 | 
			
		||||
 * Copyright 2002-2016 the original author or authors.
 | 
			
		||||
 * Copyright 2002-2017 the original author or authors.
 | 
			
		||||
 *
 | 
			
		||||
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
 * you may not use this file except in compliance with the License.
 | 
			
		||||
| 
						 | 
				
			
			@ -96,7 +96,7 @@ public abstract class AbstractHttpMessageConverter<T> implements HttpMessageConv
 | 
			
		|||
	 * Set the list of {@link MediaType} objects supported by this converter.
 | 
			
		||||
	 */
 | 
			
		||||
	public void setSupportedMediaTypes(List<MediaType> supportedMediaTypes) {
 | 
			
		||||
		Assert.notEmpty(supportedMediaTypes, "'supportedMediaTypes' must not be empty");
 | 
			
		||||
		Assert.notEmpty(supportedMediaTypes, "MediaType List must not be empty");
 | 
			
		||||
		this.supportedMediaTypes = new ArrayList<>(supportedMediaTypes);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -231,8 +231,8 @@ public abstract class AbstractHttpMessageConverter<T> implements HttpMessageConv
 | 
			
		|||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Add default headers to the output message.
 | 
			
		||||
	 * <p>This implementation delegates to {@link #getDefaultContentType(Object)} if a content
 | 
			
		||||
	 * type was not provided, set if necessary the default character set, calls
 | 
			
		||||
	 * <p>This implementation delegates to {@link #getDefaultContentType(Object)} if a
 | 
			
		||||
	 * content type was not provided, set if necessary the default character set, calls
 | 
			
		||||
	 * {@link #getContentLength}, and sets the corresponding headers.
 | 
			
		||||
	 * @since 4.2
 | 
			
		||||
	 */
 | 
			
		||||
| 
						 | 
				
			
			@ -256,7 +256,7 @@ public abstract class AbstractHttpMessageConverter<T> implements HttpMessageConv
 | 
			
		|||
				headers.setContentType(contentTypeToUse);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if (headers.getContentLength() < 0) {
 | 
			
		||||
		if (headers.getContentLength() < 0 && !headers.containsKey(HttpHeaders.TRANSFER_ENCODING)) {
 | 
			
		||||
			Long contentLength = getContentLength(t, headers.getContentType());
 | 
			
		||||
			if (contentLength != null) {
 | 
			
		||||
				headers.setContentLength(contentLength);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue