Interface RequestDispatcher
public interface RequestDispatcher
RequestDispatcher object, which is
used as a wrapper around a server resource located at a particular path or given by a particular name.
This interface is intended to wrap servlets, but a servlet container can create RequestDispatcher
objects to wrap any type of resource.
-
Field Summary
Fields Modifier and Type Field Description static StringERROR_EXCEPTIONThe name of the request attribute under which the exception object is propagated during an error dispatchstatic StringERROR_EXCEPTION_TYPEThe name of the request attribute under which the type of the exception object is propagated during an error dispatchstatic StringERROR_MESSAGEThe name of the request attribute under which the exception message is propagated during an error dispatchstatic StringERROR_REQUEST_URIThe name of the request attribute under which the request URI whose processing caused the error is propagated during an error dispatchstatic StringERROR_SERVLET_NAMEThe name of the request attribute under which the name of the servlet in which the error occurred is propagated during an error dispatchstatic StringERROR_STATUS_CODEThe name of the request attribute under which the response status is propagated during an error dispatchstatic StringFORWARD_CONTEXT_PATHThe name of the request attribute under which the original context path is made available to the target of aforwardstatic StringFORWARD_MAPPINGThe name of the request attribute under which the originalHttpServletMappingis made available to the target of aforwardstatic StringFORWARD_PATH_INFOThe name of the request attribute under which the original path info is made available to the target of aforwardstatic StringFORWARD_QUERY_STRINGThe name of the request attribute under which the original query string is made available to the target of aforwardstatic StringFORWARD_REQUEST_URIThe name of the request attribute under which the original request URI is made available to the target of aforwardstatic StringFORWARD_SERVLET_PATHThe name of the request attribute under which the original servlet path is made available to the target of aforwardstatic StringINCLUDE_CONTEXT_PATHThe name of the request attribute under which the context path of the target of anincludeis storedstatic StringINCLUDE_MAPPINGThe name of the request attribute under which theHttpServletMappingof the target of anincludeis storedstatic StringINCLUDE_PATH_INFOThe name of the request attribute under which the path info of the target of anincludeis storedstatic StringINCLUDE_QUERY_STRINGThe name of the request attribute under which the query string of the target of anincludeis storedstatic StringINCLUDE_REQUEST_URIThe name of the request attribute under which the request URI of the target of anincludeis storedstatic StringINCLUDE_SERVLET_PATHThe name of the request attribute under which the servlet path of the target of anincludeis stored -
Method Summary
Modifier and Type Method Description voidforward(ServletRequest request, ServletResponse response)Forwards a request from a servlet to another resource (servlet, JSP file, or HTML file) on the server.voidinclude(ServletRequest request, ServletResponse response)Includes the content of a resource (servlet, JSP page, HTML file) in the response.
-
Field Details
-
FORWARD_REQUEST_URI
The name of the request attribute under which the original request URI is made available to the target of aforward- See Also:
- Constant Field Values
-
FORWARD_CONTEXT_PATH
The name of the request attribute under which the original context path is made available to the target of aforward- See Also:
- Constant Field Values
-
FORWARD_MAPPING
The name of the request attribute under which the originalHttpServletMappingis made available to the target of aforward- Since:
- 4.0
- See Also:
- Constant Field Values
-
FORWARD_PATH_INFO
The name of the request attribute under which the original path info is made available to the target of aforward- See Also:
- Constant Field Values
-
FORWARD_SERVLET_PATH
The name of the request attribute under which the original servlet path is made available to the target of aforward- See Also:
- Constant Field Values
-
FORWARD_QUERY_STRING
The name of the request attribute under which the original query string is made available to the target of aforward- See Also:
- Constant Field Values
-
INCLUDE_REQUEST_URI
The name of the request attribute under which the request URI of the target of anincludeis stored- See Also:
- Constant Field Values
-
INCLUDE_CONTEXT_PATH
The name of the request attribute under which the context path of the target of anincludeis stored- See Also:
- Constant Field Values
-
INCLUDE_PATH_INFO
The name of the request attribute under which the path info of the target of anincludeis stored- See Also:
- Constant Field Values
-
INCLUDE_MAPPING
The name of the request attribute under which theHttpServletMappingof the target of anincludeis stored- See Also:
- Constant Field Values
-
INCLUDE_SERVLET_PATH
The name of the request attribute under which the servlet path of the target of anincludeis stored- See Also:
- Constant Field Values
-
INCLUDE_QUERY_STRING
The name of the request attribute under which the query string of the target of anincludeis stored- See Also:
- Constant Field Values
-
ERROR_EXCEPTION
The name of the request attribute under which the exception object is propagated during an error dispatch- See Also:
- Constant Field Values
-
ERROR_EXCEPTION_TYPE
The name of the request attribute under which the type of the exception object is propagated during an error dispatch- See Also:
- Constant Field Values
-
ERROR_MESSAGE
The name of the request attribute under which the exception message is propagated during an error dispatch- See Also:
- Constant Field Values
-
ERROR_REQUEST_URI
The name of the request attribute under which the request URI whose processing caused the error is propagated during an error dispatch- See Also:
- Constant Field Values
-
ERROR_SERVLET_NAME
The name of the request attribute under which the name of the servlet in which the error occurred is propagated during an error dispatch- See Also:
- Constant Field Values
-
ERROR_STATUS_CODE
The name of the request attribute under which the response status is propagated during an error dispatch- See Also:
- Constant Field Values
-
-
Method Details
-
forward
void forward(ServletRequest request, ServletResponse response) throws ServletException, IOExceptionForwards 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
RequestDispatcherobtained viagetRequestDispatcher(), theServletRequestobject has its path elements and parameters adjusted to match the path of the target resource.forwardshould 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
ServletRequestWrapperorServletResponseWrapperclasses that wrap them.This method sets the dispatcher type of the given request to
DispatcherType.FORWARD.- Parameters:
request- aServletRequestobject that represents the request the client makes of the servletresponse- aServletResponseobject that represents the response the servlet returns to the client- Throws:
ServletException- if the target resource throws this exceptionIOException- if the target resource throws this exceptionIllegalStateException- if the response was already committed- See Also:
ServletRequest.getDispatcherType()
-
include
void include(ServletRequest request, ServletResponse response) throws ServletException, IOExceptionIncludes the content of a resource (servlet, JSP page, HTML file) in the response. In essence, this method enables programmatic server-side includes.The
ServletResponseobject 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
ServletRequestWrapperorServletResponseWrapperclasses that wrap them.This method sets the dispatcher type of the given request to
DispatcherType.INCLUDE.- Parameters:
request- aServletRequestobject that contains the client's requestresponse- aServletResponseobject that contains the servlet's response- Throws:
ServletException- if the included resource throws this exceptionIOException- if the included resource throws this exception- See Also:
ServletRequest.getDispatcherType()
-