|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ServletRequest
Defines an object to provide client request information to a servlet. The
servlet container creates a ServletRequest
object and passes
it as an argument to the servlet's service
method.
A ServletRequest
object provides data including
parameter name and values, attributes, and an input stream.
Interfaces that extend ServletRequest
can provide
additional protocol-specific data (for example, HTTP data is
provided by HttpServletRequest
.
HttpServletRequest
Method Summary | |
---|---|
Object |
getAttribute(String name)
Returns the value of the named attribute as an Object ,
or null if no attribute of the given name exists. |
Enumeration |
getAttributeNames()
Returns an Enumeration containing the
names of the attributes available to this request. |
String |
getCharacterEncoding()
Returns the name of the character encoding used in the body of this request. |
int |
getContentLength()
Returns the length, in bytes, of the request body and made available by the input stream, or -1 if the length is not known. |
String |
getContentType()
Returns the MIME type of the body of the request, or null if the type is not known. |
ServletInputStream |
getInputStream()
Retrieves the body of the request as binary data using a ServletInputStream . |
String |
getLocalAddr()
Returns the Internet Protocol (IP) address of the interface on which the request was received. |
Locale |
getLocale()
Returns the preferred Locale that the client will
accept content in, based on the Accept-Language header. |
Enumeration |
getLocales()
Returns an Enumeration of Locale objects
indicating, in decreasing order starting with the preferred locale, the
locales that are acceptable to the client based on the Accept-Language
header. |
String |
getLocalName()
Returns the host name of the Internet Protocol (IP) interface on which the request was received. |
int |
getLocalPort()
Returns the Internet Protocol (IP) port number of the interface on which the request was received. |
String |
getParameter(String name)
Returns the value of a request parameter as a String ,
or null if the parameter does not exist. |
Map |
getParameterMap()
Returns a java.util.Map of the parameters of this request. |
Enumeration |
getParameterNames()
Returns an Enumeration of String
objects containing the names of the parameters contained
in this request. |
String[] |
getParameterValues(String name)
Returns an array of String objects containing
all of the values the given request parameter has, or
null if the parameter does not exist. |
String |
getProtocol()
Returns the name and version of the protocol the request uses in the form protocol/majorVersion.minorVersion, for example, HTTP/1.1. |
BufferedReader |
getReader()
Retrieves the body of the request as character data using a BufferedReader . |
String |
getRealPath(String path)
Deprecated. As of Version 2.1 of the Java Servlet API, use ServletContext.getRealPath(java.lang.String) instead. |
String |
getRemoteAddr()
Returns the Internet Protocol (IP) address of the client or last proxy that sent the request. |
String |
getRemoteHost()
Returns the fully qualified name of the client or the last proxy that sent the request. |
int |
getRemotePort()
Returns the Internet Protocol (IP) source port of the client or last proxy that sent the request. |
RequestDispatcher |
getRequestDispatcher(String path)
Returns a RequestDispatcher object that acts as a wrapper for
the resource located at the given path. |
String |
getScheme()
Returns the name of the scheme used to make this request, for example, http , https , or ftp . |
String |
getServerName()
Returns the host name of the server to which the request was sent. |
int |
getServerPort()
Returns the port number to which the request was sent. |
boolean |
isSecure()
Returns a boolean indicating whether this request was made using a secure channel, such as HTTPS. |
void |
removeAttribute(String name)
Removes an attribute from this request. |
void |
setAttribute(String name,
Object o)
Stores an attribute in this request. |
void |
setCharacterEncoding(String env)
Overrides the name of the character encoding used in the body of this request. |
Method Detail |
---|
Object getAttribute(String name)
Object
,
or null
if no attribute of the given name exists.
Attributes can be set two ways. The servlet container may set
attributes to make available custom information about a request.
For example, for requests made using HTTPS, the attribute
javax.servlet.request.X509Certificate
can be used to
retrieve information on the certificate of the client. Attributes
can also be set programatically using
setAttribute(java.lang.String, java.lang.Object)
. This allows information to be
embedded into a request before a RequestDispatcher
call.
Attribute names should follow the same conventions as package
names. This specification reserves names matching java.*
,
javax.*
, and sun.*
.
name
- a String
specifying the name of
the attribute
Object
containing the value
of the attribute, or null
if
the attribute does not existEnumeration getAttributeNames()
Enumeration
containing the
names of the attributes available to this request.
This method returns an empty Enumeration
if the request has no attributes available to it.
Enumeration
of strings
containing the names
of the request's attributesString getCharacterEncoding()
null
if the request
does not specify a character encoding
String
containing the name of
the character encoding, or null
if the request does not specify a character encodingvoid setCharacterEncoding(String env) throws UnsupportedEncodingException
env
- String
containing the name of
the character encoding.
UnsupportedEncodingException
- if this
ServletRequest is still in a state where a
character encoding may be set, but the specified
encoding is invalidint getContentLength()
String getContentType()
null
if the type is not known. For HTTP servlets,
same as the value of the CGI variable CONTENT_TYPE.
String
containing the name
of the MIME type of
the request, or null if the type is not knownServletInputStream getInputStream() throws IOException
ServletInputStream
. Either this method or
getReader()
may be called to read the body, not both.
ServletInputStream
object containing
the body of the request
IllegalStateException
- if the getReader()
method
has already been called for this request
IOException
- if an input or output exception occurredString getParameter(String name)
String
,
or null
if the parameter does not exist. Request parameters
are extra information sent with the request. For HTTP servlets,
parameters are contained in the query string or posted form data.
You should only use this method when you are sure the
parameter has only one value. If the parameter might have
more than one value, use getParameterValues(java.lang.String)
.
If you use this method with a multivalued
parameter, the value returned is equal to the first value
in the array returned by getParameterValues
.
If the parameter data was sent in the request body, such as occurs
with an HTTP POST request, then reading the body directly via getInputStream()
or getReader()
can interfere
with the execution of this method.
name
- a String
specifying the
name of the parameter
String
representing the
single value of the parametergetParameterValues(java.lang.String)
Enumeration getParameterNames()
Enumeration
of String
objects containing the names of the parameters contained
in this request. If the request has
no parameters, the method returns an
empty Enumeration
.
Enumeration
of String
objects, each String
containing
the name of a request parameter; or an
empty Enumeration
if the
request has no parametersString[] getParameterValues(String name)
String
objects containing
all of the values the given request parameter has, or
null
if the parameter does not exist.
If the parameter has a single value, the array has a length of 1.
name
- a String
containing the name of
the parameter whose value is requested
String
objects
containing the parameter's valuesgetParameter(java.lang.String)
Map getParameterMap()
String getProtocol()
SERVER_PROTOCOL
.
String
containing the protocol
name and version numberString getScheme()
http
, https
, or ftp
.
Different schemes have different rules for constructing URLs,
as noted in RFC 1738.
String
containing the name
of the scheme used to make this requestString getServerName()
Host
header value, if any, or the resolved server name, or the server IP address.
String
containing the name
of the serverint getServerPort()
Host
header value, if any, or the server port where the client connection
was accepted on.
BufferedReader getReader() throws IOException
BufferedReader
. The reader translates the character
data according to the character encoding used on the body.
Either this method or getInputStream()
may be called to read the
body, not both.
BufferedReader
containing the body of the request
UnsupportedEncodingException
- if the character set encoding
used is not supported and the
text cannot be decoded
IllegalStateException
- if getInputStream()
method
has been called on this request
IOException
- if an input or output exception occurredgetInputStream()
String getRemoteAddr()
REMOTE_ADDR
.
String
containing the
IP address of the client that sent the requestString getRemoteHost()
REMOTE_HOST
.
String
containing the fully
qualified name of the clientvoid setAttribute(String name, Object o)
RequestDispatcher
.
Attribute names should follow the same conventions as
package names. Names beginning with java.*
,
javax.*
, and com.sun.*
, are
reserved for use by Sun Microsystems.
If the object passed in is null, the effect is the same as
calling removeAttribute(java.lang.String)
.
It is warned that when the request is dispatched from the
servlet resides in a different web application by
RequestDispatcher
, the object set by this method
may not be correctly retrieved in the caller servlet.
name
- a String
specifying
the name of the attributeo
- the Object
to be storedvoid removeAttribute(String name)
Attribute names should follow the same conventions as
package names. Names beginning with java.*
,
javax.*
, and com.sun.*
, are
reserved for use by Sun Microsystems.
name
- a String
specifying
the name of the attribute to removeLocale getLocale()
Locale
that the client will
accept content in, based on the Accept-Language header.
If the client request doesn't provide an Accept-Language header,
this method returns the default locale for the server.
Locale
for the clientEnumeration getLocales()
Enumeration
of Locale
objects
indicating, in decreasing order starting with the preferred locale, the
locales that are acceptable to the client based on the Accept-Language
header.
If the client request doesn't provide an Accept-Language header,
this method returns an Enumeration
containing one
Locale
, the default locale for the server.
Enumeration
of preferred
Locale
objects for the clientboolean isSecure()
RequestDispatcher getRequestDispatcher(String path)
RequestDispatcher
object that acts as a wrapper for
the resource located at the given path.
A RequestDispatcher
object can be used to forward
a request to the resource or to include the resource in a response.
The resource can be dynamic or static.
The pathname specified may be relative, although it cannot extend
outside the current servlet context. If the path begins with
a "/" it is interpreted as relative to the current context root.
This method returns null
if the servlet container
cannot return a RequestDispatcher
.
The difference between this method and ServletContext.getRequestDispatcher(java.lang.String)
is that this method can take a
relative path.
path
- a String
specifying the pathname
to the resource. If it is relative, it must be
relative against the current servlet.
RequestDispatcher
object
that acts as a wrapper for the resource
at the specified path, or null
if the servlet container cannot return a
RequestDispatcher
RequestDispatcher
,
ServletContext.getRequestDispatcher(java.lang.String)
String getRealPath(String path)
ServletContext.getRealPath(java.lang.String)
instead.
int getRemotePort()
String getLocalName()
String
containing the host
name of the IP on which the request was received.String getLocalAddr()
String
containing the
IP address on which the request was received.int getLocalPort()
|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2006 Sun Microsystems, Inc. All rights reserved.