|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.faces.context.ExternalContext
public abstract class ExternalContext
This class allows the Faces API to be unaware of the nature of its containing application environment. In particular, this class allows JavaServer Faces based appications to run in either a Servlet or a Portlet environment.
The documentation for this class only
specifies the behavior for the Servlet implementation of
ExternalContext
. The Portlet implementation of
ExternalContext
is specified under the revision of the
Portlet Bridge
Specification for JavaServer Faces JSR that corresponds to
this version of the JSF specification. See the Preface of the
"prose document", linked
from the javadocs, for a reference.
If a reference to an
ExternalContext
is obtained during application startup or shutdown
time, any method documented as "valid to call this method during
application startup or shutdown" must be supported during application startup or shutdown
time. The result of calling a method during application startup or shutdown time
that does not have this designation is undefined.
Field Summary | |
---|---|
static java.lang.String |
BASIC_AUTH
String identifier for BASIC authentication. |
static java.lang.String |
CLIENT_CERT_AUTH
String identifier for CLIENT_CERT authentication. |
static java.lang.String |
DIGEST_AUTH
String identifier for DIGEST authentication. |
static java.lang.String |
FORM_AUTH
String identifier for FORM authentication. |
Constructor Summary | |
---|---|
ExternalContext()
|
Method Summary | |
---|---|
void |
addResponseCookie(java.lang.String name,
java.lang.String value,
java.util.Map<java.lang.String,java.lang.Object> properties)
Adds the cookie represented by the arguments to the response. |
void |
addResponseHeader(java.lang.String name,
java.lang.String value)
Add the given name and value to the response header. |
abstract void |
dispatch(java.lang.String path)
Dispatch a request to the specified resource to create output for this response. |
abstract java.lang.String |
encodeActionURL(java.lang.String url)
Return the input URL, after performing any rewriting needed to ensure that it will correctly identify an addressable action in the current application. |
java.lang.String |
encodeBookmarkableURL(java.lang.String baseUrl,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters)
The purpose of this method is to generate a query string from the collection of Parameter objects provided by the parameters argument and append that query string to the baseUrl. |
abstract java.lang.String |
encodeNamespace(java.lang.String name)
Return the specified name, after prefixing it with a namespace that ensures that it will be unique within the context of a particular page. |
java.lang.String |
encodePartialActionURL(java.lang.String url)
Return the input URL, after performing any rewriting needed to ensure that it can be used in a partial page submission (ajax request) to correctly identify an addressable action in the current application. |
java.lang.String |
encodeRedirectURL(java.lang.String baseUrl,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters)
The purpose of this method is to generate a query string from the collection of Parameter objects provided by the parameters argument and append that query string to the baseUrl. |
abstract java.lang.String |
encodeResourceURL(java.lang.String url)
Return the input URL, after performing any rewriting needed to ensure that it will correctly identify an addressable resource in the current application. |
abstract java.util.Map<java.lang.String,java.lang.Object> |
getApplicationMap()
Return a mutable Map representing the application scope attributes
for the current application. |
abstract java.lang.String |
getAuthType()
Return the name of the authentication scheme used to authenticate the current user, if any; otherwise, return null . |
abstract java.lang.Object |
getContext()
Return the application environment object instance for the current appication. |
java.lang.String |
getContextName()
Return the name of the container context for this application. |
Flash |
getFlash()
Return the threadsafe |
abstract java.lang.String |
getInitParameter(java.lang.String name)
Return the value of the specified application initialization parameter (if any). |
abstract java.util.Map |
getInitParameterMap()
Return an immutable Map whose keys are the set of application
initialization parameter names configured for this application,
and whose values are the corresponding parameter values. |
java.lang.String |
getMimeType(java.lang.String file)
Returns the MIME type of the
specified file or |
java.lang.String |
getRealPath(java.lang.String path)
Returns a String containing the real path for a given virtual path. |
abstract java.lang.String |
getRemoteUser()
Return the login name of the user making the current request if any; otherwise, return null . |
abstract java.lang.Object |
getRequest()
Return the environment-specific object instance for the current request. |
java.lang.String |
getRequestCharacterEncoding()
Return the character encoding currently being used to interpret this request. |
int |
getRequestContentLength()
Return the result
of calling |
java.lang.String |
getRequestContentType()
Return the MIME Content-Type for this request. |
abstract java.lang.String |
getRequestContextPath()
Return the portion of the request URI that identifies the web application context for this request. |
abstract java.util.Map<java.lang.String,java.lang.Object> |
getRequestCookieMap()
Return an immutable Map whose keys are the set of
cookie names included in the current request, and whose
values (of type javax.servlet.http.Cookie )
are the first (or only) cookie for each cookie name
returned by the underlying request. |
abstract java.util.Map<java.lang.String,java.lang.String> |
getRequestHeaderMap()
Return an immutable Map whose keys are the set of
request header names included in the current request, and whose
values (of type String) are the first (or only) value for each
header name returned by the underlying request. |
abstract java.util.Map<java.lang.String,java.lang.String[]> |
getRequestHeaderValuesMap()
Return an immutable Map whose keys are the set of
request header names included in the current request, and whose
values (of type String[]) are all of the value for each
header name returned by the underlying request. |
abstract java.util.Locale |
getRequestLocale()
Return the preferred Locale in which the client
will accept content. |
abstract java.util.Iterator<java.util.Locale> |
getRequestLocales()
Return an Iterator over the preferred
Locale s specified in the request, in decreasing
order of preference. |
abstract java.util.Map<java.lang.String,java.lang.Object> |
getRequestMap()
Return a mutable Map representing the request
scope attributes for the current application. |
abstract java.util.Map<java.lang.String,java.lang.String> |
getRequestParameterMap()
Return an immutable Map whose keys are the set of
request parameters names included in the current request, and whose
values (of type String) are the first (or only) value for each
parameter name returned by the underlying request. |
abstract java.util.Iterator<java.lang.String> |
getRequestParameterNames()
Return an Iterator over the names of all request
parameters included in the current request. |
abstract java.util.Map<java.lang.String,java.lang.String[]> |
getRequestParameterValuesMap()
Return an immutable Map whose keys are the set of
request parameters names included in the current request, and whose
values (of type String[]) are all of the values for each
parameter name returned by the underlying request. |
abstract java.lang.String |
getRequestPathInfo()
Return the extra path information (if any) included in the request URI; otherwise, return null . |
java.lang.String |
getRequestScheme()
Returns the name of the scheme used to make this request, for example, http, https, or ftp. |
java.lang.String |
getRequestServerName()
Returns the host name of the server to which the request was sent. |
int |
getRequestServerPort()
Returns the port number to which the request was sent. |
abstract java.lang.String |
getRequestServletPath()
Return the servlet path information (if any) included in the request URI; otherwise, return null . |
abstract java.net.URL |
getResource(java.lang.String path)
Return a URL for the application resource mapped to the
specified path, if it exists; otherwise, return
null . |
abstract java.io.InputStream |
getResourceAsStream(java.lang.String path)
Return an InputStream for an application resource mapped to
the specified path, if it exists; otherwise, return
null . |
abstract java.util.Set<java.lang.String> |
getResourcePaths(java.lang.String path)
Return the Set of resource paths for all application resources
whose resource path starts with the specified argument. |
abstract java.lang.Object |
getResponse()
Return the environment-specific object instance for the current response. |
int |
getResponseBufferSize()
Return the buffer size for the current response. |
java.lang.String |
getResponseCharacterEncoding()
Returns the name of the character encoding (MIME charset) used for the body sent in this response. |
java.lang.String |
getResponseContentType()
Return the MIME Content-Type for this response. |
java.io.OutputStream |
getResponseOutputStream()
Returns an |
java.io.Writer |
getResponseOutputWriter()
Returns a |
abstract java.lang.Object |
getSession(boolean create)
If the create parameter is true ,
create (if necessary) and return a session instance associated
with the current request. |
abstract java.util.Map<java.lang.String,java.lang.Object> |
getSessionMap()
Return a mutable Map representing the session
scope attributes for the current application. |
abstract java.security.Principal |
getUserPrincipal()
Return the Principal object containing the name of
the current authenticated user, if any; otherwise, return
null . |
void |
invalidateSession()
Invalidates this session then unbinds any objects bound to it. |
boolean |
isResponseCommitted()
Check if the current response has been committed. |
abstract boolean |
isUserInRole(java.lang.String role)
Return true if the currently authenticated user is
included in the specified role. |
abstract void |
log(java.lang.String message)
Log the specified message to the application object. |
abstract void |
log(java.lang.String message,
java.lang.Throwable exception)
Log the specified message and exception to the application object. |
abstract void |
redirect(java.lang.String url)
Redirect a request to the specified URL, and cause the responseComplete() method to be called on the
FacesContext instance for the current request. |
void |
responseFlushBuffer()
Flushes the buffered response content to the client. |
void |
responseReset()
Resets the current response. |
void |
responseSendError(int statusCode,
java.lang.String message)
Sends an HTTP status code with message. |
void |
setRequest(java.lang.Object request)
Set the environment-specific request to be returned by subsequent calls to getRequest() . |
void |
setRequestCharacterEncoding(java.lang.String encoding)
Overrides the name of the character encoding used in the body of this request. |
void |
setResponse(java.lang.Object response)
Set the environment-specific response to be returned by subsequent calls to getResponse() . |
void |
setResponseBufferSize(int size)
Set the buffer size for the current response. |
void |
setResponseCharacterEncoding(java.lang.String encoding)
Sets the character encoding (MIME charset) of the response being sent to the client, for example, to UTF-8. |
void |
setResponseContentLength(int length)
Set the content length of the response. |
void |
setResponseContentType(java.lang.String contentType)
Sets the content type of the response being sent to the client, if the response has not been committed yet. |
void |
setResponseHeader(java.lang.String name,
java.lang.String value)
Set the response header with the given name and value. |
void |
setResponseStatus(int statusCode)
Sets the HTTP status code for the response. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String BASIC_AUTH
String identifier for BASIC authentication.
public static final java.lang.String CLIENT_CERT_AUTH
String identifier for CLIENT_CERT authentication.
public static final java.lang.String DIGEST_AUTH
String identifier for DIGEST authentication.
public static final java.lang.String FORM_AUTH
String identifier for FORM authentication.
Constructor Detail |
---|
public ExternalContext()
Method Detail |
---|
public void addResponseCookie(java.lang.String name, java.lang.String value, java.util.Map<java.lang.String,java.lang.Object> properties)
Adds the cookie represented by the arguments to the response.
Servlet: This must be accomplished by calling the
javax.servlet.http.HttpServletResponse
method
addCookie()
. The Cookie
argument must
be constructed by passing the name
and
value
parameters. If the properties
arugument is non-null
and not empty, the
Cookie
instance must be initialized as described
below.
Key in "values" Map |
Expected type of value. | Name of setter method on Cookie instance to be
set with the value from the Map . |
---|---|---|
comment | String | setComment |
domain | String | setDomain |
maxAge | Integer | setMaxAge |
secure | Boolean | setSecure |
path | String | setPath |
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
name
- To be passed as the first argument to the
Cookie
constructor.value
- To be passed as the second argument to the
Cookie
constructor.properties
- A Map
containg key/value pairs to be passed
as arguments to the setter methods as described above.
java.lang.IllegalArgumentException
- if the properties
Map
is not-null
and not empty and contains
any keys that are not one of the keys listed above.public abstract void dispatch(java.lang.String path) throws java.io.IOException
Dispatch a request to the specified resource to create output for this response.
Servlet: This must be accomplished by calling the
javax.servlet.ServletContext
method
getRequestDispatcher(path)
, and calling the
forward()
method on the resulting object.
path
- Context relative path to the specified resource,
which must start with a slash ("/") character
FacesException
- thrown if a ServletException
occurs
java.lang.IllegalArgumentException
- if no request dispatcher
can be created for the specified path
java.io.IOException
- if an input/output error occurs
java.lang.NullPointerException
- if path
is null
public abstract java.lang.String encodeActionURL(java.lang.String url)
Return the input URL, after performing any rewriting needed to ensure that it will correctly identify an addressable action in the current application.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletResponse
method
encodeURL(url)
.
url
- The input URL to be encoded
java.lang.NullPointerException
- if url
is null
public abstract java.lang.String encodeNamespace(java.lang.String name)
Return the specified name, after prefixing it with a namespace that ensures that it will be unique within the context of a particular page.
Servlet: The input value must be returned unchanged.
name
- Name to be encoded
java.lang.NullPointerException
- if name
is null
public abstract java.lang.String encodeResourceURL(java.lang.String url)
Return the input URL, after performing any rewriting needed to ensure that it will correctly identify an addressable resource in the current application.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletResponse
method
encodeURL(url)
.
url
- The input URL to be encoded
java.lang.NullPointerException
- if url
is null
public abstract java.util.Map<java.lang.String,java.lang.Object> getApplicationMap()
Return a mutable
Map
representing the application scope attributes
for the current application. The returned Map
must
implement the entire contract for a modifiable map as described
in the JavaDocs for java.util.Map
. Modifications
made in the Map
must cause the corresponding changes
in the set of application scope attributes. Particularly the
clear()
, remove()
, put()
,
putAll()
, and get()
operations must
take the appropriate action on the underlying data structure.
For any of the Map
methods that cause an element
to be removed from the underlying data structure, the following
action regarding managed-beans must be taken. If the element to
be removed is a managed-bean, and it has one or more public
no-argument void return methods annotated with
javax.annotation.PreDestroy
, each such method must
be called before the element is removed from the underlying data
structure. Elements that are not managed-beans, but do happen to
have methods with that annotation must not have those methods
called on removal. Any exception thrown by the
PreDestroy
annotated methods must by caught and not
rethrown. The exception may be logged.
It is valid to call this method
during application startup or shutdown. If called at startup or shutdown time, this
method returns a Map
that is backed by the same
container context instance (ServletContext
or
PortletContext
) as the one returned by calling
getApplicationMap()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This must be the set of attributes available via
the javax.servlet.ServletContext
methods
getAttribute()
, getAttributeNames()
,
removeAttribute()
, and setAttribute()
.
public abstract java.lang.String getAuthType()
Return the name of the authentication scheme used to authenticate
the current user, if any; otherwise, return null
.
For standard authentication schemes, the returned value will match
one of the following constants:
BASIC_AUTH
, CLIENT_CERT_AUTH
,
DIGEST_AUTH
, or FORM_AUTH
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getAuthType()
.
public Flash getFlash()
Return the threadsafe Flash
for this application. The default implementation will throw
UnsupportedOperationException
. Compliant JSF
runtimes must provide an implementation of this method.
public java.lang.String getMimeType(java.lang.String file)
Returns the MIME type of the
specified file or null
if the MIME type is not
known. The MIME type is determined by the container.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this method calls through to the
getMimeType()
method on the same container
context instance (ServletContext
or
PortletContext
) as the one used when calling
getMimeType()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This must be the value returned by the
javax.servlet.ServletContext
method
getMimeType()
.
file
- The file for which the mime type should be obtained.public abstract java.lang.Object getContext()
Return the application environment object instance for the current appication.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this returns the same container context instance
(ServletContext
or PortletContext
) as
the one returned when calling getContext()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This must be the current application's
javax.servlet.ServletContext
instance.
public java.lang.String getContextName()
Return the name of the container context for this application.
Return the result of calling
getServletContextName()
on the
ServletContext
instance for this application. It is
valid to call this method during application startup or shutdown.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public abstract java.lang.String getInitParameter(java.lang.String name)
Return the value of the specified application initialization parameter (if any).
Servlet: This must be the result of the
javax.servlet.ServletContext
method
getInitParameter(name)
.
It is valid to call this method during application startup or shutdown. If called during application startup or shutdown, this method calls through to the actual container context to return the init parameter value.
name
- Name of the requested initialization parameter
java.lang.NullPointerException
- if name
is null
public abstract java.util.Map getInitParameterMap()
Return an
immutable Map
whose keys are the set of application
initialization parameter names configured for this application,
and whose values are the corresponding parameter values. The
returned Map
must implement the entire contract for
an unmodifiable map as described in the JavaDocs for
java.util.Map
.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this method returns a Map
that is backed by
the same container context instance (ServletContext
or PortletContext
) as the one returned by calling
getInitParameterMap()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This result must be as if it were synthesized
by calling the javax.servlet.ServletContext
method getInitParameterNames
, and putting
each configured parameter name/value pair into the result.
public abstract java.lang.String getRemoteUser()
Return the login name of the user making the current request
if any; otherwise, return null
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getRemoteUser()
.
public abstract java.lang.Object getRequest()
Return the environment-specific object instance for the current request.
Servlet: This must be the current request's
javax.servlet.http.HttpServletRequest
instance.
public void setRequest(java.lang.Object request)
Set the environment-specific request to be returned by
subsequent calls to getRequest()
. This may be used to
install a wrapper for the request.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public java.lang.String getRequestScheme()
Returns the name of the scheme used to make this request, for example, http, https, or ftp.
Servlet: This must be the value returned by the
javax.servlet.ServletRequest
method
getScheme()
.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public java.lang.String getRequestServerName()
Returns the host name of the server to which the request was sent.
Servlet: This must be the value returned by the
javax.servlet.ServletRequest
method
getServerName()
.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public int getRequestServerPort()
Returns the port number to which the request was sent.
Servlet: This must be the value returned by the
javax.servlet.ServletRequest
method
getServerPort()
.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public void setRequestCharacterEncoding(java.lang.String encoding) throws java.io.UnsupportedEncodingException
Overrides the name of the character encoding used in the body of this request.
Calling this method after the request has been accessed will have no
no effect, unless a Reader
or Stream
has been
obtained from the request, in which case an IllegalStateException
is thrown.
Servlet: This must call through to the
javax.servlet.ServletRequest
method
setCharacterEncoding()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
java.io.UnsupportedEncodingException
- if this is not a valid
encodingpublic java.lang.String getRealPath(java.lang.String path)
Returns a String containing the real path for a given virtual path.
Servlet: This must be the value returned by the
javax.servlet.ServletContext
method
getRealPath()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
path
- The context of the requested initialization parameterpublic abstract java.lang.String getRequestContextPath()
Return the portion of the request URI that identifies the web application context for this request.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getContextPath()
.
public abstract java.util.Map<java.lang.String,java.lang.Object> getRequestCookieMap()
Return an immutable Map
whose keys are the set of
cookie names included in the current request, and whose
values (of type javax.servlet.http.Cookie
)
are the first (or only) cookie for each cookie name
returned by the underlying request. The returned
Map
must implement the entire contract for an unmodifiable
map as described in the JavaDocs for java.util.Map
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getCookies()
, unless null
was returned,
in which case this must be a zero-length array.
public abstract java.util.Map<java.lang.String,java.lang.String> getRequestHeaderMap()
Return an immutable Map
whose keys are the set of
request header names included in the current request, and whose
values (of type String) are the first (or only) value for each
header name returned by the underlying request. The returned
Map
must implement the entire contract for an unmodifiable
map as described in the JavaDocs for java.util.Map
. In
addition, key comparisons must be performed in a case insensitive
manner.
Servlet: This must be the set of headers available via
the javax.servlet.http.HttpServletRequest
methods
getHeader()
and getHeaderNames()
.
public abstract java.util.Map<java.lang.String,java.lang.String[]> getRequestHeaderValuesMap()
Return an immutable Map
whose keys are the set of
request header names included in the current request, and whose
values (of type String[]) are all of the value for each
header name returned by the underlying request. The returned
Map
must implement the entire contract for an unmodifiable
map as described in the JavaDocs for java.util.Map
. In
addition, key comparisons must be performed in a case insensitive
manner.
Servlet: This must be the set of headers available via
the javax.servlet.http.HttpServletRequest
methods
getHeaders()
and getHeaderNames()
.
public abstract java.util.Locale getRequestLocale()
Return the preferred Locale
in which the client
will accept content.
Servlet: This must be the value returned by the
javax.servlet.ServletRequest
method
getLocale()
.
public abstract java.util.Iterator<java.util.Locale> getRequestLocales()
Return an Iterator
over the preferred
Locale
s specified in the request, in decreasing
order of preference.
Servlet: This must be an Iterator
over the values returned by the javax.servlet.ServletRequest
method getLocales()
.
public abstract java.util.Map<java.lang.String,java.lang.Object> getRequestMap()
Return a mutable Map
representing the request
scope attributes for the current application. The returned
Map
must implement the entire contract for a
modifiable map as described in the JavaDocs for
java.util.Map
. Modifications made in the
Map
must cause the corresponding changes in the set
of request scope attributes. Particularly the
clear()
, remove()
, put()
,
putAll()
, and get()
operations must
take the appropriate action on the underlying data structure.
For any of the Map
methods that cause an element
to be removed from the underlying data structure, the following
action regarding managed-beans must be taken. If the element to
be removed is a managed-bean, and it has one or more public
no-argument void return methods annotated with
javax.annotation.PreDestroy
, each such method must
be called before the element is removed from the underlying data
structure. Elements that are not managed-beans, but do happen to
have methods with that annotation must not have those methods
called on removal. Any exception thrown by the
PreDestroy
annotated methods must by caught and not
rethrown. The exception may be logged.
Servlet: This must be the set of attributes available via
the javax.servlet.ServletRequest
methods
getAttribute()
, getAttributeNames()
,
removeAttribute()
, and setAttribute()
.
public abstract java.util.Map<java.lang.String,java.lang.String> getRequestParameterMap()
Return an immutable Map
whose keys are the set of
request parameters names included in the current request, and whose
values (of type String) are the first (or only) value for each
parameter name returned by the underlying request. The returned
Map
must implement the entire contract for an unmodifiable
map as described in the JavaDocs for java.util.Map
.
Servlet: This must be the set of parameters available via
the javax.servlet.ServletRequest
methods
getParameter()
and getParameterNames()
.
public abstract java.util.Iterator<java.lang.String> getRequestParameterNames()
Return an Iterator
over the names of all request
parameters included in the current request.
Servlet: This must be an Iterator
over the
values returned by the javax.servlet.ServletRequest
method getParameterNames()
.
public abstract java.util.Map<java.lang.String,java.lang.String[]> getRequestParameterValuesMap()
Return an immutable Map
whose keys are the set of
request parameters names included in the current request, and whose
values (of type String[]) are all of the values for each
parameter name returned by the underlying request. The returned
Map
must implement the entire contract for an unmodifiable
map as described in the JavaDocs for java.util.Map
.
Servlet: This must be the set of parameters available via
the javax.servlet.ServletRequest
methods
getParameterValues()
and
getParameterNames()
.
public abstract java.lang.String getRequestPathInfo()
Return the extra path information (if any) included in the
request URI; otherwise, return null
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getPathInfo()
.
public abstract java.lang.String getRequestServletPath()
Return the servlet path information (if any) included in the
request URI; otherwise, return null
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getServletPath()
.
public java.lang.String getRequestCharacterEncoding()
Return the character encoding currently being used to interpret this request.
Servlet: This must return the value returned by the
javax.servlet.ServletRequest
method
getCharacterEncoding()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public java.lang.String getRequestContentType()
Return the MIME Content-Type for this request. If not
available, return null
.
Servlet: This must return the value returned by the
javax.servlet.ServletRequest
method
getContentType()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public int getRequestContentLength()
Return the result
of calling getContentLenth()
on the
ServletRequest
instance for this request.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public java.lang.String getResponseCharacterEncoding()
Returns the name of the character encoding (MIME charset) used for the body sent in this response.
Servlet: This must return the value returned by the
javax.servlet.ServletResponse
method
getCharacterEncoding()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public java.lang.String getResponseContentType()
Return the MIME Content-Type for this response. If not
available, return null
.
Servlet: This must return the value returned by the
javax.servlet.ServletResponse
method
getContentType()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public abstract java.net.URL getResource(java.lang.String path) throws java.net.MalformedURLException
Return a
URL
for the application resource mapped to the
specified path, if it exists; otherwise, return
null
.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this method calls through to the
getResource()
method on the same container
context instance (ServletContext
or
PortletContext
) as the one used when calling
getResource()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This must be the value returned by the
javax.servlet.ServletContext
method
getResource(path)
.
path
- The path to the requested resource, which must
start with a slash ("/" character
java.net.MalformedURLException
- if the specified path
is not in the correct form
java.lang.NullPointerException
- if path
is null
public abstract java.io.InputStream getResourceAsStream(java.lang.String path)
Return an
InputStream
for an application resource mapped to
the specified path, if it exists; otherwise, return
null
.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this method calls through to the
getResourceAsStream()
method on the same container
context instance (ServletContext
or
PortletContext
) as the one used when calling
getResourceAsStream()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This must be the value returned by the
javax.servlet.ServletContext
method
getResourceAsStream(path)
.
path
- The path to the requested resource, which must
start with a slash ("/" character
java.lang.NullPointerException
- if path
is null
public abstract java.util.Set<java.lang.String> getResourcePaths(java.lang.String path)
Return the
Set
of resource paths for all application resources
whose resource path starts with the specified argument.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this method calls through to the
getResourcePaths()
method on the same container
context instance (ServletContext
or
PortletContext
) as the one used when calling
getResourcePaths()
on the
ExternalContext
returned by the
FacesContext
during an actual request.
Servlet: This must be the value returned by the
javax.servlet.ServletContext
method
getResourcePaths(path).
path
- Partial path used to match resources, which must
start with a slash ("/") character
java.lang.NullPointerException
- if path
is null
public abstract java.lang.Object getResponse()
Return the environment-specific object instance for the current response.
Servlet: This is the current request's
javax.servlet.http.HttpServletResponse
instance.
public void setResponse(java.lang.Object response)
Set the environment-specific response to be returned by
subsequent calls to getResponse()
. This may be used to
install a wrapper for the response.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public java.io.OutputStream getResponseOutputStream() throws java.io.IOException
Returns an OutputStream
suitable for writing binary data to the user-agent.
Servlet: This must return the value returned by the
javax.servlet.ServletResponse
method
getOutputStream()
.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
java.io.IOException
public java.io.Writer getResponseOutputWriter() throws java.io.IOException
Returns a Writer
suitable for writing character data to the user-agent.
Servlet: This must return the value returned by the
ServletResponse.getWriter()
.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
java.io.IOException
public void setResponseCharacterEncoding(java.lang.String encoding)
Sets the character encoding (MIME charset) of the response being sent to the client, for example, to UTF-8.
Servlet: This must call through to the
javax.servlet.ServletResponse
method
setCharacterEncoding()
.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
public void setResponseContentType(java.lang.String contentType)
Sets the content type of the response being sent to the client, if the response has not been committed yet.
Servlet: This must call
setContentType()
on the underlying
javax.servlet.ServletResponse
instance.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
contentType
- The content type to be set as the contentType
of the response.public abstract java.lang.Object getSession(boolean create)
If the create
parameter is true
,
create (if necessary) and return a session instance associated
with the current request. If the create
parameter
is false
return any existing session instance
associated with the current request, or return null
if
there is no such session.
Servlet: This must return the result of calling
getSession(create)
on the underlying
javax.servlet.http.HttpServletRequest
instance.
create
- Flag indicating whether or not a new session should be
created if there is no session associated with the current requestpublic abstract java.util.Map<java.lang.String,java.lang.Object> getSessionMap()
Return a mutable Map
representing the session
scope attributes for the current application. The returned
Map
must implement the entire contract for a
modifiable map as described in the JavaDocs for
java.util.Map
. Modifications made in the
Map
must cause the corresponding changes in the set
of session scope attributes. Particularly the
clear()
, remove()
, put()
,
and get()
operations must take the appropriate
action on the underlying data structure. Accessing attributes
via this Map
must cause the creation of a session
associated with the current request, if such a session does not
already exist.
For any of the Map
methods that cause an element
to be removed from the underlying data structure, the following
action regarding managed-beans must be taken. If the element to
be removed is a managed-bean, and it has one or more public
no-argument void return methods annotated with
javax.annotation.PreDestroy
, each such method must
be called before the element is removed from the underlying data
structure. Elements that are not managed-beans, but do happen to
have methods with that annotation must not have those methods
called on removal. Any exception thrown by the
PreDestroy
annotated methods must by caught and not
rethrown. The exception may be logged.
Servlet: This must be the set of attributes available via
the javax.servlet.http.HttpSession
methods
getAttribute()
, getAttributeNames()
,
removeAttribute()
, and setAttribute()
.
public abstract java.security.Principal getUserPrincipal()
Return the Principal
object containing the name of
the current authenticated user, if any; otherwise, return
null
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
getUserPrincipal()
.
public void invalidateSession()
Invalidates this session then unbinds any objects bound to it.
Servlet: This must be the value returned by the
javax.servlet.http.HttpSession
method
invalidate()
.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public abstract boolean isUserInRole(java.lang.String role)
Return true
if the currently authenticated user is
included in the specified role. Otherwise, return false
.
Servlet: This must be the value returned by the
javax.servlet.http.HttpServletRequest
method
isUserInRole(role)
.
role
- Logical role name to be checked
java.lang.NullPointerException
- if role
is null
public abstract void log(java.lang.String message)
Log the specified message to the application object.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this calls the log()
method on the same
container context instance (ServletContext
or
PortletContext
) as the one used during a call to
log()
on the ExternalContext
returned
by the FacesContext
during an actual request.
Servlet: This must be performed by calling the
javax.servlet.ServletContext
method
log(String)
.
message
- Message to be logged
java.lang.NullPointerException
- if message
is null
public abstract void log(java.lang.String message, java.lang.Throwable exception)
Log the specified message and exception to the application object.
It is valid to call this method
during application startup or shutdown. If called during application
startup or shutdown, this calls the log()
method on the same
container context instance (ServletContext
or
PortletContext
) as the one used when calling
log()
on the ExternalContext
returned
by the FacesContext
during an actual request.
Servlet: This must be performed by calling the
javax.servlet.ServletContext
method
log(String,Throwable)
.
message
- Message to be loggedexception
- Exception to be logged
java.lang.NullPointerException
- if message
or exception
is null
public abstract void redirect(java.lang.String url) throws java.io.IOException
Redirect a request
to the specified URL, and cause the
responseComplete()
method to be called on the
FacesContext
instance for the current request.
The implementation must determine if
the request is an Ajax
request by obtaining a
PartialViewContext
instance from the FacesContext
and
calling PartialViewContext#isAjaxRequest()
.
Servlet: For
non Ajax
requests, this must be accomplished by calling
the javax.servlet.http.HttpServletResponse
method
sendRedirect()
.
PartialResponseWriter
instance from the
FacesContext
.setResponseContentType(java.lang.String)
with text/xml
setResponseCharacterEncoding(java.lang.String)
with UTF-8
addResponseHeader(java.lang.String, java.lang.String)
with Cache-Control
,
no-cache
PartialResponseWriter#startDocument
PartialResponseWriter#redirect
with the url
argument.PartialResponseWriter#endDocument
url
- Absolute URL to which the client should be redirected
java.lang.IllegalArgumentException
- if the specified url is relative
IllegalStateException
- if, in a portlet environment,
the current response object is a RenderResponse
instead of an ActionResponse
IllegalStateException
- if, in a servlet environment,
the current response has already been committed
java.io.IOException
- if an input/output error occurspublic void setResponseHeader(java.lang.String name, java.lang.String value)
Set the response header with the given name and value.
Servlet:This must be performed by calling the
javax.servlet.http.HttpServletResponse
setHeader
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
name
- The name of the response header.value
- The value of the response header.public void addResponseHeader(java.lang.String name, java.lang.String value)
Add the given name and value to the response header.
Servlet:This must be performed by calling the
javax.servlet.http.HttpServletResponse
addHeader
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
name
- The name of the response header.value
- The value of the response header.public void setResponseBufferSize(int size)
Set the buffer size for the current response.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
setBufferSize
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
size
- the new buffer sizepublic int getResponseBufferSize()
Return the buffer size for the current response.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
getBufferSize
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public boolean isResponseCommitted()
Check if the current response has been committed.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
isCommitted
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public void responseReset()
Resets the current response.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
reset
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public void responseSendError(int statusCode, java.lang.String message) throws java.io.IOException
Sends an HTTP status code with message.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
sendError
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
statusCode
- an HTTP status codemessage
- an option message to detail the cause of the code
java.io.IOException
public void setResponseStatus(int statusCode)
Sets the HTTP status code for the response.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
setStatus
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
statusCode
- an HTTP status codepublic void responseFlushBuffer() throws java.io.IOException
Flushes the buffered response content to the client.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
flushBuffer
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
java.io.IOException
public void setResponseContentLength(int length)
Set the content length of the response.
Servlet: This must be performed by calling the
javax.servlet.http.HttpServletResponse
setContentLength
method.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
public java.lang.String encodeBookmarkableURL(java.lang.String baseUrl, java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters)
The purpose of this method is to generate a query string from the collection of Parameter objects provided by the parameters argument and append that query string to the baseUrl. This method must be able to encode the parameters to a baseUrl that may or may not have existing query parameters. The parameter values should be encoded appropriately for the environment so that the resulting URL can be used as the target of a link (e.g., in an href attribute) in a JSF response. It's possible for an ExternalContext implementation to override this method in any way that would make the URL bookmarkable in that environment.
The default implementation throws
UnsupportedOperationException
and is provided for
the sole purpose of not breaking existing applications that
extend this class.
baseUrl
- The base URL onto which the query string generated by this method will be appended. The URL may contain query parameters.parameters
- The collection of Parameter objects, representing name=value pairs that are used to produce a query stringpublic java.lang.String encodeRedirectURL(java.lang.String baseUrl, java.util.Map<java.lang.String,java.util.List<java.lang.String>> parameters)
baseUrl
- The base URL onto which the query string generated by this method will be appended. The URL may contain query parameters.parameters
- The collection of Parameter objects, representing name=value pairs that are used to produce a query stringpublic java.lang.String encodePartialActionURL(java.lang.String url)
Return the input URL, after performing any rewriting needed to ensure that it can be used in a partial page submission (ajax request) to correctly identify an addressable action in the current application.
Servlet:Returns the same encoded URL as the
encodeActionURL(String url)
method.
Portlet:Returns an encoded URL that, upon HTTP POST, will invoke the RESOURCE_PHASE of the portlet lifecycle.
url
- The input URL to be encoded
java.lang.NullPointerException
- if url
is null
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 2009, 2010, Oracle Corporation and/or its affiliates. All Rights Reserved. Use is subject to license terms.
Generated on 4-June-2010 04:34