public abstract class FacesContextFactory extends Object implements FacesWrapper<FacesContextFactory>
FacesContextFactory
is a factory object that creates
(if needed) and returns new FacesContext
instances, initialized
for the processing of the specified request and response objects.
Implementations may take advantage of the calls to the
release()
method of the allocated FacesContext
instances to pool and recycle them, rather than creating a new instance
every time.
There must be one FacesContextFactory
instance per web
application that is utilizing JavaServer Faces. This instance can be
acquired, in a portable manner, by calling:
FacesContextFactory factory = (FacesContextFactory) FactoryFinder.getFactory(FactoryFinder.FACES_CONTEXT_FACTORY);
Constructor and Description |
---|
FacesContextFactory() |
Modifier and Type | Method and Description |
---|---|
abstract FacesContext |
getFacesContext(Object context,
Object request,
Object response,
Lifecycle lifecycle)
Create (if needed)
and return a
FacesContext instance that is initialized
for the processing of the specified request and response objects,
utilizing the specified Lifecycle instance, for this web
application. |
FacesContextFactory |
getWrapped()
If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped. |
public FacesContextFactory getWrapped()
If this factory has been decorated, the
implementation doing the decorating may override this method to provide
access to the implementation being wrapped. A default implementation
is provided that returns null
.
getWrapped
in interface FacesWrapper<FacesContextFactory>
public abstract FacesContext getFacesContext(Object context, Object request, Object response, Lifecycle lifecycle) throws FacesException
Create (if needed)
and return a FacesContext
instance that is initialized
for the processing of the specified request and response objects,
utilizing the specified Lifecycle
instance, for this web
application.
The implementation of this method must ensure that calls to the
getCurrentInstance()
method of FacesContext
,
from the same thread that called this method, will return the same
FacesContext
instance until the release()
method is called on that instance.
The implementation must call
ExternalContextFactory.getExternalContext(java.lang.Object, java.lang.Object, java.lang.Object)
to produce the
ExternalContext
for the FacesContext
instance.
The default implementation must call
ExceptionHandlerFactory.getExceptionHandler()
and make it
so the return from that method is what gets returned from a call
to FacesContext.getExceptionHandler()
on the returned
FacesContext
instance.
The default implementation must call
ClientWindowFactory.getClientWindow(javax.faces.context.FacesContext)
and make it
so the return from that method is what gets returned from a call
to ExternalContext.getClientWindow()
on the returned
ExternalContext
instance.
context
- In servlet environments, the
ServletContext
that is associated with this web
applicationrequest
- In servlet environments, the
ServletRequest
that is to be processedresponse
- In servlet environments, the
ServletResponse
that is to be processedlifecycle
- The Lifecycle
instance being used
to process this requestFacesException
- if a FacesContext
cannot be
constructed for the specified parametersNullPointerException
- if any of the parameters
are null
Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.