|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.faces.context.FacesContext
public abstract class FacesContext
FacesContext contains all of the per-request state information related to the processing of a single JavaServer Faces request, and the rendering of the corresponding response. It is passed to, and potentially modified by, each phase of the request processing lifecycle.
A FacesContext
instance is associated with a particular
request at the beginning of request processing, by a call to the
getFacesContext()
method of the FacesContextFactory
instance associated with the current web application. The instance
remains active until its release()
method is called, after
which no further references to this instance are allowed. While a
FacesContext
instance is active, it must not be referenced
from any thread other than the one upon which the servlet container
executing this web application utilizes for the processing of this request.
Constructor Summary | |
---|---|
FacesContext()
|
Method Summary | |
---|---|
abstract void |
addMessage(String clientId,
FacesMessage message)
Append a FacesMessage to the set of messages associated with
the specified client identifier, if clientId is
not null . |
abstract Application |
getApplication()
Return the Application instance associated with this
web application. |
abstract Iterator<String> |
getClientIdsWithMessages()
Return an Iterator over the client identifiers for
which at least one FacesMessage has been queued. |
static FacesContext |
getCurrentInstance()
Return the FacesContext instance for the request that is
being processed by the current thread, if any. |
ELContext |
getELContext()
Return the ELContext instance for this
FacesContext instance. |
abstract ExternalContext |
getExternalContext()
Return the ExternalContext instance for this
FacesContext instance. |
abstract FacesMessage.Severity |
getMaximumSeverity()
Return the maximum severity level recorded on any FacesMessage s that has been queued, whether or not they are
associated with any specific UIComponent . |
abstract Iterator<FacesMessage> |
getMessages()
Return an Iterator over the FacesMessage s
that have been queued, whether or not they are associated with any
specific client identifier. |
abstract Iterator<FacesMessage> |
getMessages(String clientId)
Return an Iterator over the FacesMessage s that
have been queued that are associated with the specified client identifier
(if clientId is not null ), or over the
FacesMessage s that have been queued that are not associated with
any specific client identifier (if clientId is
null ). |
abstract RenderKit |
getRenderKit()
Return the RenderKit instance for the render kit identifier
specified on our UIViewRoot , if there is one. |
abstract boolean |
getRenderResponse()
Return true if the renderResponse()
method has been called for the current request. |
abstract boolean |
getResponseComplete()
Return true if the responseComplete()
method has been called for the current request. |
abstract ResponseStream |
getResponseStream()
Return the ResponseStream to which components should
direct their binary output. |
abstract ResponseWriter |
getResponseWriter()
Return the ResponseWriter to which components should
direct their character-based output. |
abstract UIViewRoot |
getViewRoot()
Return the root component that is associated with the this request. |
abstract void |
release()
Release any resources associated with this FacesContext instance. |
abstract void |
renderResponse()
Signal the JavaServer faces implementation that, as soon as the current phase of the request processing lifecycle has been completed, control should be passed to the Render Response phase, bypassing any phases that have not been executed yet. |
abstract void |
responseComplete()
Signal the JavaServer Faces implementation that the HTTP response for this request has already been generated (such as an HTTP redirect), and that the request processing lifecycle should be terminated as soon as the current phase is completed. |
protected static void |
setCurrentInstance(FacesContext context)
Set the FacesContext instance for the request that is
being processed by the current thread. |
abstract void |
setResponseStream(ResponseStream responseStream)
Set the ResponseStream to which components should
direct their binary output. |
abstract void |
setResponseWriter(ResponseWriter responseWriter)
Set the ResponseWriter to which components should
direct their character-based output. |
abstract void |
setViewRoot(UIViewRoot root)
Set the root component that is associated with this request. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FacesContext()
Method Detail |
---|
public abstract Application getApplication()
Return the Application
instance associated with this
web application.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract Iterator<String> getClientIdsWithMessages()
Return an Iterator
over the client identifiers for
which at least one FacesMessage
has been queued. If there are no
such client identifiers, an empty Iterator
is returned.
If any messages have been queued that were not associated with any
specific client identifier, a null
value will be included
in the iterated values. The elements in the Iterator
must
be returned in the order in which they were added with addMessage(java.lang.String, javax.faces.application.FacesMessage)
.
IllegalStateException
- if this method is called after
this instance has been releasedpublic ELContext getELContext()
Return the ELContext
instance for this
FacesContext
instance. This ELContext
instance has the same lifetime and scope as the
FacesContext
instance with which it is associated,
and may be created lazily the first time this method is called
for a given FacesContext
instance. Upon creation of
the ELContext instance, the implementation must take the
following action:
Call the ELContext.putContext(java.lang.Class, java.lang.Object)
method on the
instance, passing in FacesContext.class
and the
this
reference for the FacesContext
instance itself.
If the Collection
returned by Application.getELContextListeners()
is
non-empty, create an instance of ELContextEvent
and pass it to each ELContextListener
instance in the
Collection
by calling the ELContextListener.contextCreated(javax.el.ELContextEvent)
method.
The default implementation throws
UnsupportedOperationException
and is provided
for the sole purpose of not breaking existing applications that extend
this class.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract ExternalContext getExternalContext()
Return the ExternalContext
instance for this
FacesContext
instance.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract FacesMessage.Severity getMaximumSeverity()
Return the maximum severity level recorded on any
FacesMessage
s that has been queued, whether or not they are
associated with any specific UIComponent
. If no such messages
have been queued, return null
.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract Iterator<FacesMessage> getMessages()
Return an Iterator
over the FacesMessage
s
that have been queued, whether or not they are associated with any
specific client identifier. If no such messages have been queued,
return an empty Iterator
. The elements of the Iterator
must be returned in the order in which they were added with calls to addMessage(java.lang.String, javax.faces.application.FacesMessage)
.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract Iterator<FacesMessage> getMessages(String clientId)
Return an Iterator
over the FacesMessage
s that
have been queued that are associated with the specified client identifier
(if clientId
is not null
), or over the
FacesMessage
s that have been queued that are not associated with
any specific client identifier (if clientId
is
null
). If no such messages have been queued, return an
empty Iterator
. The elements of the Iterator
must be returned in the order in which they were added with calls to addMessage(java.lang.String, javax.faces.application.FacesMessage)
.
clientId
- The client identifier for which messages are
requested, or null
for messages not associated with
any client identifier
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract RenderKit getRenderKit()
Return the RenderKit
instance for the render kit identifier
specified on our UIViewRoot
, if there is one. If there is no
current UIViewRoot
, if the UIViewRoot
does not have a
specified renderKitId
, or if there is no RenderKit
for the specified identifier, return null
instead.
public abstract boolean getRenderResponse()
Return true
if the renderResponse()
method has been called for the current request.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract boolean getResponseComplete()
Return true
if the responseComplete()
method has been called for the current request.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract ResponseStream getResponseStream()
Return the ResponseStream
to which components should
direct their binary output. Within a given response, components
can use either the ResponseStream or the ResponseWriter,
but not both.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract void setResponseStream(ResponseStream responseStream)
Set the ResponseStream
to which components should
direct their binary output.
responseStream
- The new ResponseStream for this response
NullPointerException
- if responseStream
is null
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract ResponseWriter getResponseWriter()
Return the ResponseWriter
to which components should
direct their character-based output. Within a given response,
components can use either the ResponseStream or the ResponseWriter,
but not both.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract void setResponseWriter(ResponseWriter responseWriter)
Set the ResponseWriter
to which components should
direct their character-based output.
responseWriter
- The new ResponseWriter for this response
IllegalStateException
- if this method is called after
this instance has been released
NullPointerException
- if responseWriter
is null
public abstract UIViewRoot getViewRoot()
Return the root component that is associated with the this request.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract void setViewRoot(UIViewRoot root)
Set the root component that is associated with this request. This method can only be called by the application handler (or a class that the handler calls), and only during the Invoke Application phase of the request processing lifecycle.
root
- The new component UIViewRoot
component
IllegalStateException
- if this method is called after
this instance has been released
NullPointerException
- if root
is null
public abstract void addMessage(String clientId, FacesMessage message)
Append a FacesMessage
to the set of messages associated with
the specified client identifier, if clientId
is
not null
. If clientId
is null
,
this FacesMessage
is assumed to not be associated with any
specific component instance.
clientId
- The client identifier with which this message is
associated (if any)message
- The message to be appended
IllegalStateException
- if this method is called after
this instance has been released
NullPointerException
- if message
is null
public abstract void release()
Release any resources associated with this
FacesContext
instance. Faces implementations may
choose to pool instances in the associated FacesContextFactory
to avoid repeated object creation and
garbage collection. After release()
is called on a
FacesContext
instance (until the
FacesContext
instance has been recycled by the
implementation for re-use), calling any other methods will cause
an IllegalStateException
to be thrown.
The implementation must call setCurrentInstance(javax.faces.context.FacesContext)
passing null
to remove the association between this
thread and this dead FacesContext
instance.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract void renderResponse()
Signal the JavaServer faces implementation that, as soon as the current phase of the request processing lifecycle has been completed, control should be passed to the Render Response phase, bypassing any phases that have not been executed yet.
IllegalStateException
- if this method is called after
this instance has been releasedpublic abstract void responseComplete()
Signal the JavaServer Faces implementation that the HTTP response for this request has already been generated (such as an HTTP redirect), and that the request processing lifecycle should be terminated as soon as the current phase is completed.
IllegalStateException
- if this method is called after
this instance has been releasedpublic static FacesContext getCurrentInstance()
Return the FacesContext
instance for the request that is
being processed by the current thread, if any.
protected static void setCurrentInstance(FacesContext context)
Set the FacesContext
instance for the request that is
being processed by the current thread.
context
- The FacesContext
instance for the current
thread, or null
if this thread no longer has a
FacesContext
instance.
|
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.