diff --git a/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java b/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
index 48bae546afa..8224e9d4500 100644
--- a/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
+++ b/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
@@ -22,6 +22,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
+import java.io.StringReader;
import java.io.UnsupportedEncodingException;
import java.security.Principal;
import java.text.ParseException;
@@ -125,6 +126,9 @@ public class MockHttpServletRequest implements HttpServletRequest {
private static final ServletInputStream EMPTY_SERVLET_INPUT_STREAM =
new DelegatingServletInputStream(StreamUtils.emptyInput());
+ private static final BufferedReader EMPTY_BUFFERED_READER =
+ new BufferedReader(new StringReader(""));
+
/**
* Date formats as specified in the HTTP RFC
* @see Section 7.1.1.1 of RFC 7231
@@ -659,11 +663,12 @@ public class MockHttpServletRequest implements HttpServletRequest {
if (this.content != null) {
InputStream sourceStream = new ByteArrayInputStream(this.content);
Reader sourceReader = (this.characterEncoding != null) ?
- new InputStreamReader(sourceStream, this.characterEncoding) : new InputStreamReader(sourceStream);
+ new InputStreamReader(sourceStream, this.characterEncoding) :
+ new InputStreamReader(sourceStream);
return new BufferedReader(sourceReader);
}
else {
- return null;
+ return EMPTY_BUFFERED_READER;
}
}
diff --git a/spring-web/src/test/java/org/springframework/mock/web/test/MockHttpServletRequest.java b/spring-web/src/test/java/org/springframework/mock/web/test/MockHttpServletRequest.java
index 76994525513..debed377a31 100644
--- a/spring-web/src/test/java/org/springframework/mock/web/test/MockHttpServletRequest.java
+++ b/spring-web/src/test/java/org/springframework/mock/web/test/MockHttpServletRequest.java
@@ -22,6 +22,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
+import java.io.StringReader;
import java.io.UnsupportedEncodingException;
import java.security.Principal;
import java.text.ParseException;
@@ -125,6 +126,9 @@ public class MockHttpServletRequest implements HttpServletRequest {
private static final ServletInputStream EMPTY_SERVLET_INPUT_STREAM =
new DelegatingServletInputStream(StreamUtils.emptyInput());
+ private static final BufferedReader EMPTY_BUFFERED_READER =
+ new BufferedReader(new StringReader(""));
+
/**
* Date formats as specified in the HTTP RFC
* @see Section 7.1.1.1 of RFC 7231
@@ -659,11 +663,12 @@ public class MockHttpServletRequest implements HttpServletRequest {
if (this.content != null) {
InputStream sourceStream = new ByteArrayInputStream(this.content);
Reader sourceReader = (this.characterEncoding != null) ?
- new InputStreamReader(sourceStream, this.characterEncoding) : new InputStreamReader(sourceStream);
+ new InputStreamReader(sourceStream, this.characterEncoding) :
+ new InputStreamReader(sourceStream);
return new BufferedReader(sourceReader);
}
else {
- return null;
+ return EMPTY_BUFFERED_READER;
}
}
@@ -940,7 +945,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
this.headers.put(name, header);
}
if (value instanceof Collection) {
- header.addValues((Collection) value);
+ header.addValues((Collection>) value);
}
else if (value.getClass().isArray()) {
header.addValueArray(value);