Class MockHttpServletResponse
- All Implemented Interfaces:
HttpServletResponse
,ServletResponse
HttpServletResponse
interface.
As of Spring 6.0, this set of mocks is designed on a Servlet 6.0 baseline.
- Since:
- 1.0.2
- Author:
- Juergen Hoeller, Rod Johnson, Brian Clozel, Vedran Pavic, Sebastien Deleuze, Sam Brannen
-
Field Summary
Fields inherited from interface jakarta.servlet.http.HttpServletResponse
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
addDateHeader
(String name, long value) void
void
addIncludedUrl
(String includedUrl) void
addIntHeader
(String name, int value) boolean
containsHeader
(String name) encodeRedirectURL
(String url) The default implementation delegates toencodeURL(java.lang.String)
, returning the given URL String as-is.The default implementation returns the given URL String as-is.void
int
byte[]
Get the content of the response body as aString
, using the charset specified for the response by the application, either throughHttpServletResponse
methods or through a charset parameter on theContent-Type
.getContentAsString
(Charset fallbackCharset) Get the content of the response body as aString
, using the providedfallbackCharset
if no charset has been explicitly defined and otherwise using the charset specified for the response by the application, either throughHttpServletResponse
methods or through a charset parameter on theContent-Type
.int
Get the length of the content body from the HTTP Content-Length header.long
Cookie[]
long
getDateHeader
(String name) Return the error message used when callingHttpServletResponse.sendError(int, String)
.Return the primary value for the given header as a String, if any.Return the names of all specified headers as a Set of Strings.getHeaders
(String name) Return all values for the given header as a List of Strings.getHeaderValue
(String name) Return the primary value for the given header, if any.getHeaderValues
(String name) Return all values for the given header as a List of value objects.int
boolean
Determine whether the character encoding has been explicitly set throughHttpServletResponse
methods or through acharset
parameter on theContent-Type
.boolean
boolean
Return whethergetOutputStream()
access is allowed.boolean
Return whethergetOutputStream()
access is allowed.void
reset()
void
void
sendError
(int status) void
void
sendRedirect
(String url) void
sendRedirect
(String url, int sc, boolean clearBuffer) void
setBufferSize
(int bufferSize) void
setCharacterEncoding
(String characterEncoding) void
setCommitted
(boolean committed) void
setContentLength
(int contentLength) void
setContentLengthLong
(long contentLength) void
setContentType
(String contentType) void
setDateHeader
(String name, long value) void
setDefaultCharacterEncoding
(String characterEncoding) Set the default character encoding for the response.void
setForwardedUrl
(String forwardedUrl) void
void
setIncludedUrl
(String includedUrl) void
setIntHeader
(String name, int value) void
void
setOutputStreamAccessAllowed
(boolean outputStreamAccessAllowed) Set whethergetOutputStream()
access is allowed.void
setStatus
(int status) void
setWriterAccessAllowed
(boolean writerAccessAllowed) Set whethergetWriter()
access is allowed.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface jakarta.servlet.http.HttpServletResponse
getTrailerFields, setTrailerFields
-
Constructor Details
-
MockHttpServletResponse
public MockHttpServletResponse()
-
-
Method Details
-
setOutputStreamAccessAllowed
public void setOutputStreamAccessAllowed(boolean outputStreamAccessAllowed) Set whethergetOutputStream()
access is allowed.Default is
true
. -
isOutputStreamAccessAllowed
public boolean isOutputStreamAccessAllowed()Return whethergetOutputStream()
access is allowed. -
setWriterAccessAllowed
public void setWriterAccessAllowed(boolean writerAccessAllowed) Set whethergetWriter()
access is allowed.Default is
true
. -
isWriterAccessAllowed
public boolean isWriterAccessAllowed()Return whethergetOutputStream()
access is allowed. -
setDefaultCharacterEncoding
Set the default character encoding for the response.If this method is not invoked,
ISO-8859-1
will be used as the default character encoding.If the character encoding for the response has not already been explicitly set via
setCharacterEncoding(String)
orsetContentType(String)
, the character encoding for the response will be set to the supplied default character encoding.- Parameters:
characterEncoding
- the default character encoding- Since:
- 5.3.10
- See Also:
-
isCharset
public boolean isCharset()Determine whether the character encoding has been explicitly set throughHttpServletResponse
methods or through acharset
parameter on theContent-Type
.If
false
,getCharacterEncoding()
will return the default character encoding. -
setCharacterEncoding
- Specified by:
setCharacterEncoding
in interfaceServletResponse
-
getCharacterEncoding
- Specified by:
getCharacterEncoding
in interfaceServletResponse
-
getOutputStream
- Specified by:
getOutputStream
in interfaceServletResponse
-
getWriter
- Specified by:
getWriter
in interfaceServletResponse
- Throws:
UnsupportedEncodingException
-
getContentAsByteArray
public byte[] getContentAsByteArray() -
getContentAsString
Get the content of the response body as aString
, using the charset specified for the response by the application, either throughHttpServletResponse
methods or through a charset parameter on theContent-Type
. If no charset has been explicitly defined, the default character encoding will be used.- Returns:
- the content as a
String
- Throws:
UnsupportedEncodingException
- if the character encoding is not supported- See Also:
-
getContentAsString
Get the content of the response body as aString
, using the providedfallbackCharset
if no charset has been explicitly defined and otherwise using the charset specified for the response by the application, either throughHttpServletResponse
methods or through a charset parameter on theContent-Type
.- Returns:
- the content as a
String
- Throws:
UnsupportedEncodingException
- if the character encoding is not supported- Since:
- 5.2
- See Also:
-
setContentLength
public void setContentLength(int contentLength) - Specified by:
setContentLength
in interfaceServletResponse
-
getContentLength
public int getContentLength()Get the length of the content body from the HTTP Content-Length header.- Returns:
- the value of the Content-Length header
- See Also:
-
setContentLengthLong
public void setContentLengthLong(long contentLength) - Specified by:
setContentLengthLong
in interfaceServletResponse
-
getContentLengthLong
public long getContentLengthLong() -
setContentType
- Specified by:
setContentType
in interfaceServletResponse
-
getContentType
- Specified by:
getContentType
in interfaceServletResponse
-
setBufferSize
public void setBufferSize(int bufferSize) - Specified by:
setBufferSize
in interfaceServletResponse
-
getBufferSize
public int getBufferSize()- Specified by:
getBufferSize
in interfaceServletResponse
-
flushBuffer
public void flushBuffer()- Specified by:
flushBuffer
in interfaceServletResponse
-
resetBuffer
public void resetBuffer()- Specified by:
resetBuffer
in interfaceServletResponse
-
setCommitted
public void setCommitted(boolean committed) -
isCommitted
public boolean isCommitted()- Specified by:
isCommitted
in interfaceServletResponse
-
reset
public void reset()- Specified by:
reset
in interfaceServletResponse
-
setLocale
- Specified by:
setLocale
in interfaceServletResponse
-
getLocale
- Specified by:
getLocale
in interfaceServletResponse
-
addCookie
- Specified by:
addCookie
in interfaceHttpServletResponse
-
getCookies
-
getCookie
-
containsHeader
- Specified by:
containsHeader
in interfaceHttpServletResponse
-
getHeaderNames
Return the names of all specified headers as a Set of Strings.As of Servlet 3.0, this method is also defined in
HttpServletResponse
.- Specified by:
getHeaderNames
in interfaceHttpServletResponse
- Returns:
- the
Set
of header nameStrings
, or an emptySet
if none
-
getHeader
Return the primary value for the given header as a String, if any.Will return the first value in case of multiple values.
Returns a stringified value for Servlet 3.0 compatibility. Consider using
getHeaderValue(String)
for raw Object access.- Specified by:
getHeader
in interfaceHttpServletResponse
- Parameters:
name
- the name of the header- Returns:
- the associated header value, or
null
if none - See Also:
-
getHeaders
Return all values for the given header as a List of Strings.Returns a List of stringified values for Servlet 3.0 compatibility. Consider using
getHeaderValues(String)
for raw Object access.- Specified by:
getHeaders
in interfaceHttpServletResponse
- Parameters:
name
- the name of the header- Returns:
- the associated header values, or an empty List if none
- See Also:
-
getHeaderValue
Return the primary value for the given header, if any.Will return the first value in case of multiple values.
- Parameters:
name
- the name of the header- Returns:
- the associated header value, or
null
if none
-
getHeaderValues
Return all values for the given header as a List of value objects.- Parameters:
name
- the name of the header- Returns:
- the associated header values, or an empty List if none
-
encodeURL
The default implementation returns the given URL String as-is.Can be overridden in subclasses, appending a session id or the like.
- Specified by:
encodeURL
in interfaceHttpServletResponse
-
encodeRedirectURL
The default implementation delegates toencodeURL(java.lang.String)
, returning the given URL String as-is.Can be overridden in subclasses, appending a session id or the like in a redirect-specific fashion. For general URL encoding rules, override the common
encodeURL(java.lang.String)
method instead, applying to redirect URLs as well as to general URLs.- Specified by:
encodeRedirectURL
in interfaceHttpServletResponse
-
sendError
- Specified by:
sendError
in interfaceHttpServletResponse
- Throws:
IOException
-
sendError
- Specified by:
sendError
in interfaceHttpServletResponse
- Throws:
IOException
-
sendRedirect
- Specified by:
sendRedirect
in interfaceHttpServletResponse
- Throws:
IOException
-
sendRedirect
- Throws:
IOException
-
getRedirectedUrl
-
setDateHeader
- Specified by:
setDateHeader
in interfaceHttpServletResponse
-
addDateHeader
- Specified by:
addDateHeader
in interfaceHttpServletResponse
-
getDateHeader
-
setHeader
- Specified by:
setHeader
in interfaceHttpServletResponse
-
addHeader
- Specified by:
addHeader
in interfaceHttpServletResponse
-
setIntHeader
- Specified by:
setIntHeader
in interfaceHttpServletResponse
-
addIntHeader
- Specified by:
addIntHeader
in interfaceHttpServletResponse
-
setStatus
public void setStatus(int status) - Specified by:
setStatus
in interfaceHttpServletResponse
-
getStatus
public int getStatus()- Specified by:
getStatus
in interfaceHttpServletResponse
-
getErrorMessage
Return the error message used when callingHttpServletResponse.sendError(int, String)
. -
setForwardedUrl
-
getForwardedUrl
-
setIncludedUrl
-
getIncludedUrl
-
addIncludedUrl
-
getIncludedUrls
-