Class DefaultFaceletFactory
java.lang.Object
org.apache.myfaces.view.facelets.FaceletFactory
org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory
Default FaceletFactory implementation.
- Version:
- $Id$
- Author:
- Jacob Hookom
-
Field Summary
FieldsFields inherited from class org.apache.myfaces.view.facelets.FaceletFactory
LAST_RESOURCE_RESOLVED
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultFaceletFactory
(Compiler compiler) DefaultFaceletFactory
(Compiler compiler, long refreshPeriod) -
Method Summary
Modifier and TypeMethodDescriptionCompile a component tag on the fly.Compiler this factory usesgetCompositeComponentMetadataFacelet
(FacesContext facesContext, String uri) Works in the same way as getFacelet(String uri), but redirect to getViewMetadataFacelet(URL url)Create a Facelet used to create composite component metadata from the passed URL.getFacelet
(FacesContext facesContext, String uri) Return a Facelet instance as specified by the file at the passed URI.getFacelet
(FaceletContext ctx, URL url) Create a Facelet from the passed URL, but take into account the context.getFacelet
(URL url) Create a Facelet from the passed URL.long
getViewMetadataFacelet
(FacesContext facesContext, String uri) Works in the same way as getFacelet(String uri), but redirect to getViewMetadataFacelet(URL url)Create a Facelet used to create view metadata from the passed URL.protected boolean
needsToBeRefreshed
(org.apache.myfaces.view.facelets.impl.DefaultFacelet facelet) Template method for determining if the Facelet needs to be refreshed.resolveURL
(FacesContext context, URL source, String path) Resolves a path based on the passed URL.Methods inherited from class org.apache.myfaces.view.facelets.FaceletFactory
getInstance, setInstance
-
Field Details
-
log
-
-
Constructor Details
-
DefaultFaceletFactory
- Throws:
IOException
-
DefaultFaceletFactory
-
-
Method Details
-
getCompiler
Compiler this factory uses- Returns:
- final Compiler instance
-
getFacelet
public Facelet getFacelet(FacesContext facesContext, String uri) throws IOException, FaceletException, FacesException, jakarta.el.ELException Description copied from class:FaceletFactory
Return a Facelet instance as specified by the file at the passed URI.- Specified by:
getFacelet
in classFaceletFactory
- Returns:
- Throws:
IOException
FaceletException
FacesException
jakarta.el.ELException
-
getFacelet
public Facelet getFacelet(URL url) throws IOException, FaceletException, FacesException, jakarta.el.ELException Create a Facelet from the passed URL. This method checks if the cached Facelet needs to be refreshed before returning. If so, uses the passed URL to build a new instance;- Specified by:
getFacelet
in classFaceletFactory
- Parameters:
url
- source url- Returns:
- Facelet instance
- Throws:
IOException
FaceletException
FacesException
jakarta.el.ELException
-
getFacelet
public Facelet getFacelet(FaceletContext ctx, URL url) throws IOException, FaceletException, FacesException, jakarta.el.ELException Description copied from class:FaceletFactory
Create a Facelet from the passed URL, but take into account the context. This method is useful in cases where the facelet instance must replace the one in the cache based on the context, instead take the one from the cache, like for example when the EL expression cache is used.- Specified by:
getFacelet
in classFaceletFactory
url
- source url- Returns:
- Facelet instance
- Throws:
IOException
FaceletException
FacesException
jakarta.el.ELException
-
getRefreshPeriod
public long getRefreshPeriod() -
resolveURL
Resolves a path based on the passed URL. If the path starts with '/', then resolve the path againstjakarta.faces.context.ExternalContext#getResource(java.lang.String)
. Otherwise create a new URL viaURL(URL, String)
.- Parameters:
source
- base to resolve frompath
- relative path to the source- Returns:
- resolved URL
- Throws:
IOException
-
needsToBeRefreshed
protected boolean needsToBeRefreshed(org.apache.myfaces.view.facelets.impl.DefaultFacelet facelet) Template method for determining if the Facelet needs to be refreshed.- Parameters:
facelet
- Facelet that could have expired- Returns:
- true if it needs to be refreshed
-
getViewMetadataFacelet
Works in the same way as getFacelet(String uri), but redirect to getViewMetadataFacelet(URL url)- Specified by:
getViewMetadataFacelet
in classFaceletFactory
- Returns:
- Throws:
IOException
- Since:
- 2.0
-
getViewMetadataFacelet
public Facelet getViewMetadataFacelet(URL url) throws IOException, FaceletException, FacesException, jakarta.el.ELException Description copied from class:FaceletFactory
Create a Facelet used to create view metadata from the passed URL. This method checks if the cached Facelet needs to be refreshed before returning. If so, uses the passed URL to build a new instance;- Specified by:
getViewMetadataFacelet
in classFaceletFactory
- Parameters:
url
- source url- Returns:
- Facelet instance
- Throws:
IOException
FaceletException
FacesException
jakarta.el.ELException
- Since:
- 2.0
-
getCompositeComponentMetadataFacelet
public Facelet getCompositeComponentMetadataFacelet(FacesContext facesContext, String uri) throws IOException Works in the same way as getFacelet(String uri), but redirect to getViewMetadataFacelet(URL url)- Specified by:
getCompositeComponentMetadataFacelet
in classFaceletFactory
- Returns:
- Throws:
IOException
- Since:
- 2.0.1
-
getCompositeComponentMetadataFacelet
public Facelet getCompositeComponentMetadataFacelet(URL url) throws IOException, FaceletException, FacesException, jakarta.el.ELException Description copied from class:FaceletFactory
Create a Facelet used to create composite component metadata from the passed URL. This method checks if the cached Facelet needs to be refreshed before returning. If so, uses the passed URL to build a new instance.- Specified by:
getCompositeComponentMetadataFacelet
in classFaceletFactory
- Parameters:
url
- source url- Returns:
- Facelet instance
- Throws:
IOException
FaceletException
FacesException
jakarta.el.ELException
- Since:
- 2.0.1
-
compileComponentFacelet
public Facelet compileComponentFacelet(String taglibURI, String tagName, Map<String, Object> attributes) Description copied from class:FaceletFactory
Compile a component tag on the fly.- Specified by:
compileComponentFacelet
in classFaceletFactory
- Returns:
-