Class FacesContextFactory
- All Implemented Interfaces:
FacesWrapper<FacesContextFactory>
- Direct Known Subclasses:
FacesContextFactoryImpl
,InjectionFacesContextFactory
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 Jakarta Server
Faces. This instance can be acquired, in a portable manner, by calling:
FacesContextFactory factory = (FacesContextFactory) FactoryFinder.getFactory(FactoryFinder.FACES_CONTEXT_FACTORY);
Usage: extend this class and push the implementation being wrapped to the constructor and use getWrapped()
to
access the instance being wrapped.
-
Constructor Summary
ConstructorDescriptionDeprecated.Use the other constructor taking the implementation being wrapped.FacesContextFactory
(FacesContextFactory wrapped) If this factory has been decorated, the implementation doing the decorating should push the implementation being wrapped to this constructor. -
Method Summary
Modifier and TypeMethodDescriptionabstract FacesContext
getFacesContext
(Object context, Object request, Object response, Lifecycle lifecycle) Create (if needed) and return aFacesContext
instance that is initialized for the processing of the specified request and response objects, utilizing the specifiedLifecycle
instance, for this web application.If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped.
-
Constructor Details
-
FacesContextFactory
Deprecated.Use the other constructor taking the implementation being wrapped. -
FacesContextFactory
If this factory has been decorated, the implementation doing the decorating should push the implementation being wrapped to this constructor. The
getWrapped()
will then return the implementation being wrapped.- Parameters:
wrapped
- The implementation being wrapped.
-
-
Method Details
-
getWrapped
If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped.
- Specified by:
getWrapped
in interfaceFacesWrapper<FacesContextFactory>
- Returns:
- the wrapped instance.
- Since:
- 2.0
-
getFacesContext
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 specifiedLifecycle
instance, for this web application.The implementation of this method must ensure that calls to the
getCurrentInstance()
method ofFacesContext
, from the same thread that called this method, will return the sameFacesContext
instance until therelease()
method is called on that instance.The implementation must call
ExternalContextFactory.getExternalContext(java.lang.Object, java.lang.Object, java.lang.Object)
to produce theExternalContext
for theFacesContext
instance.The default implementation must call
ExceptionHandlerFactory.getExceptionHandler()
and make it so the return from that method is what gets returned from a call toFacesContext.getExceptionHandler()
on the returnedFacesContext
instance.The default implementation must call
ClientWindowFactory.getClientWindow(jakarta.faces.context.FacesContext)
and make it so the return from that method is what gets returned from a call toExternalContext.getClientWindow()
on the returnedExternalContext
instance.- Parameters:
context
- In Jakarta Servlet environments, theServletContext
that is associated with this web applicationrequest
- In Jakarta Servlet environments, theServletRequest
that is to be processedresponse
- In Jakarta Servlet environments, theServletResponse
that is to be processedlifecycle
- TheLifecycle
instance being used to process this request- Returns:
- the instance of
FacesContext
. - Throws:
FacesException
- if aFacesContext
cannot be constructed for the specified parametersNullPointerException
- if any of the parameters arenull
-