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()