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.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ERROR_EXCEPTION
The name of the request attribute under which the exception object is propagated during an error dispatch
|
static java.lang.String |
ERROR_EXCEPTION_TYPE
The name of the request attribute under which the type of the exception object is propagated during an error
dispatch
|
static java.lang.String |
ERROR_MESSAGE
The name of the request attribute under which the exception message is propagated during an error dispatch
|
static java.lang.String |
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
|
static java.lang.String |
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
|
static java.lang.String |
ERROR_STATUS_CODE
The name of the request attribute under which the response status is propagated during an error dispatch
|
static java.lang.String |
FORWARD_CONTEXT_PATH
The name of the request attribute under which the original context path is made available to the target of a
forward |
static java.lang.String |
FORWARD_MAPPING
The name of the request attribute under which the original
HttpServletMapping is made
available to the target of a forward |
static java.lang.String |
FORWARD_PATH_INFO
The name of the request attribute under which the original path info is made available to the target of a
forward |
static java.lang.String |
FORWARD_QUERY_STRING
The name of the request attribute under which the original query string is made available to the target of a
forward |
static java.lang.String |
FORWARD_REQUEST_URI
The name of the request attribute under which the original request URI is made available to the target of a
forward |
static java.lang.String |
FORWARD_SERVLET_PATH
The name of the request attribute under which the original servlet path is made available to the target of a
forward |
static java.lang.String |
INCLUDE_CONTEXT_PATH
The name of the request attribute under which the context path of the target of an
include is stored |
static java.lang.String |
INCLUDE_MAPPING
The name of the request attribute under which the
HttpServletMapping of the target of
an include is stored |
static java.lang.String |
INCLUDE_PATH_INFO
The name of the request attribute under which the path info of the target of an
include is stored |
static java.lang.String |
INCLUDE_QUERY_STRING
The name of the request attribute under which the query string of the target of an
include is stored |
static java.lang.String |
INCLUDE_REQUEST_URI
The name of the request attribute under which the request URI of the target of an
include is stored |
static java.lang.String |
INCLUDE_SERVLET_PATH
The name of the request attribute under which the servlet path of the target of an
include is stored |
Modifier and Type | Method and 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.
|
void |
include(ServletRequest request,
ServletResponse response)
Includes the content of a resource (servlet, JSP page, HTML file) in the response.
|
static final java.lang.String FORWARD_REQUEST_URI
forward
static final java.lang.String FORWARD_CONTEXT_PATH
forward
static final java.lang.String FORWARD_MAPPING
HttpServletMapping
is made
available to the target of a forward
static final java.lang.String FORWARD_PATH_INFO
forward
static final java.lang.String FORWARD_SERVLET_PATH
forward
static final java.lang.String FORWARD_QUERY_STRING
forward
static final java.lang.String INCLUDE_REQUEST_URI
include
is storedstatic final java.lang.String INCLUDE_CONTEXT_PATH
include
is storedstatic final java.lang.String INCLUDE_PATH_INFO
include
is storedstatic final java.lang.String INCLUDE_MAPPING
HttpServletMapping
of the target of
an include
is storedstatic final java.lang.String INCLUDE_SERVLET_PATH
include
is storedstatic final java.lang.String INCLUDE_QUERY_STRING
include
is storedstatic final java.lang.String ERROR_EXCEPTION
static final java.lang.String ERROR_EXCEPTION_TYPE
static final java.lang.String ERROR_MESSAGE
static final java.lang.String ERROR_REQUEST_URI
static final java.lang.String ERROR_SERVLET_NAME
static final java.lang.String ERROR_STATUS_CODE
void forward(ServletRequest request, ServletResponse response) throws ServletException, java.io.IOException
For a RequestDispatcher
obtained via getRequestDispatcher()
, the
ServletRequest
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 an
IllegalStateException
. 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
or ServletResponseWrapper
classes
that wrap them.
This method sets the dispatcher type of the given request to DispatcherType.FORWARD
.
request
- a ServletRequest
object that represents the request the client makes of the servletresponse
- a ServletResponse
object that represents the response the servlet returns to the clientServletException
- if the target resource throws this exceptionjava.io.IOException
- if the target resource throws this exceptionjava.lang.IllegalStateException
- if the response was already committedServletRequest.getDispatcherType()
void include(ServletRequest request, ServletResponse response) throws ServletException, java.io.IOException
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
or ServletResponseWrapper
classes
that wrap them.
This method sets the dispatcher type of the given request to DispatcherType.INCLUDE
.
request
- a ServletRequest
object that contains the client's requestresponse
- a ServletResponse
object that contains the servlet's responseServletException
- if the included resource throws this exceptionjava.io.IOException
- if the included resource throws this exceptionServletRequest.getDispatcherType()