Class MockRequestDispatcher
- java.lang.Object
- org.springframework.mock.web.MockRequestDispatcher
- All Implemented Interfaces:
RequestDispatcher
public class MockRequestDispatcher extends Object implements RequestDispatcher
Mock implementation of theRequestDispatcher
interface.- Since:
- 1.0.2
- Author:
- Rod Johnson, Juergen Hoeller, Sam Brannen
- See Also:
MockHttpServletRequest.getRequestDispatcher(String)
Field Summary
Fields inherited from interface javax.servlet.RequestDispatcher
ERROR_EXCEPTION, ERROR_EXCEPTION_TYPE, ERROR_MESSAGE, ERROR_REQUEST_URI, ERROR_SERVLET_NAME, ERROR_STATUS_CODE, FORWARD_CONTEXT_PATH, FORWARD_MAPPING, FORWARD_PATH_INFO, FORWARD_QUERY_STRING, FORWARD_REQUEST_URI, FORWARD_SERVLET_PATH, INCLUDE_CONTEXT_PATH, INCLUDE_MAPPING, INCLUDE_PATH_INFO, INCLUDE_QUERY_STRING, INCLUDE_REQUEST_URI, INCLUDE_SERVLET_PATH
Constructor Summary
Constructors Constructor Description MockRequestDispatcher(String resource)
Create a new MockRequestDispatcher for the given resource.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
forward(ServletRequest request, ServletResponse response)
Forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server.protected MockHttpServletResponse
getMockHttpServletResponse(ServletResponse response)
Obtain the underlyingMockHttpServletResponse
, unwrappingHttpServletResponseWrapper
decorators if necessary.void
include(ServletRequest request, ServletResponse response)
Includes the content of a resource (servlet, JSP page, HTML file) in the response.
Constructor Detail
MockRequestDispatcher
public MockRequestDispatcher(String resource)
Create a new MockRequestDispatcher for the given resource.- Parameters:
resource
- the server resource to dispatch to, located at a particular path or given by a particular name
Method Detail
forward
public void forward(ServletRequest request, ServletResponse response)
Description copied from interface:javax.servlet.RequestDispatcher
Forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server. This method allows one servlet to do preliminary processing of a request and another resource to generate the response.For a
RequestDispatcher
obtained viagetRequestDispatcher()
, theServletRequest
object has its path elements and parameters adjusted to match the path of the target resource.forward
should be called before the response has been committed to the client (before response body output has been flushed). If the response already has been committed, this method throws anIllegalStateException
. Uncommitted output in the response buffer is automatically cleared before the forward.The request and response parameters must be either the same objects as were passed to the calling servlet's service method or be subclasses of the
ServletRequestWrapper
orServletResponseWrapper
classes that wrap them.This method sets the dispatcher type of the given request to
DispatcherType.FORWARD
.- Specified by:
forward
in interfaceRequestDispatcher
- Parameters:
request
- aServletRequest
object that represents the request the client makes of the servletresponse
- aServletResponse
object that represents the response the servlet returns to the client- See Also:
ServletRequest.getDispatcherType()
include
public void include(ServletRequest request, ServletResponse response)
Description copied from interface:javax.servlet.RequestDispatcher
Includes the content of a resource (servlet, JSP page, HTML file) in the response. In essence, this method enables programmatic server-side includes.The
ServletResponse
object has its path elements and parameters remain unchanged from the caller's. The included servlet cannot change the response status code or set headers; any attempt to make a change is ignored.The request and response parameters must be either the same objects as were passed to the calling servlet's service method or be subclasses of the
ServletRequestWrapper
orServletResponseWrapper
classes that wrap them.This method sets the dispatcher type of the given request to
DispatcherType.INCLUDE
.- Specified by:
include
in interfaceRequestDispatcher
- Parameters:
request
- aServletRequest
object that contains the client's requestresponse
- aServletResponse
object that contains the servlet's response- See Also:
ServletRequest.getDispatcherType()
getMockHttpServletResponse
protected MockHttpServletResponse getMockHttpServletResponse(ServletResponse response)
Obtain the underlyingMockHttpServletResponse
, unwrappingHttpServletResponseWrapper
decorators if necessary.