Collection of utility methods for the Faces API that are mainly shortcuts for obtaining stuff from the provided
FacesContext argument. In effect, it 'flattens' the hierarchy of nested objects.
The difference with Faces is that no one method of FacesLocal obtains the FacesContext from
the current thread by FacesContext.getCurrentInstance(). This job is up to the caller. This is more efficient
in situations where multiple utility methods needs to be called at the same time. Invoking
FacesContext.getCurrentInstance() is at its own an extremely cheap operation, however as it's to be obtained
as a ThreadLocal variable, it's during the call still blocking all other running threads for some nanoseconds
or so.
Note that methods which are directly available on FacesContext instance itself, such as
FacesContext.getExternalContext(), FacesContext.getViewRoot(),
FacesContext.isValidationFailed(), etc are not delegated by the this utility class, because it would design
technically not make any sense to delegate a single-depth method call like follows:
ExternalContext externalContext = FacesLocal.getExternalContext(facesContext);
instead of just calling it directly like follows:
ExternalContext externalContext = facesContext.getExternalContext();
Usage
Here are some examples:
FacesContext context = Faces.getContext();
User user = FacesLocal.getSessionAttribute(context, "user");
Item item = FacesLocal.evaluateExpressionGet(context, "#{item}");
String cookieValue = FacesLocal.getRequestCookie(context, "cookieName");
List<Locale> supportedLocales = FacesLocal.getSupportedLocales(context);
FacesLocal.invalidateSession(context);
FacesLocal.redirect(context, "login.xhtml");
For a full list, check the method summary.
-
Method Summary
Modifier and TypeMethodDescriptionstatic voidaddResponseCookie(FacesContext context, String name, String value, int maxAge) static voidaddResponseCookie(FacesContext context, String name, String value, String path, int maxAge) static voidaddResponseCookie(FacesContext context, String name, String value, String domain, String path, int maxAge) static voidaddResponseCookie(FacesContext context, String name, String value, String domain, String path, int maxAge, boolean httpOnly) static voidaddResponseCookie(FacesContext context, String name, String value, String domain, String path, int maxAge, boolean httpOnly, Map<String, String> attributes) static voidaddResponseHeader(FacesContext context, String name, String value) static booleanauthenticate(FacesContext context) static <T> Converter<T>createConverter(FacesContext context, Class<?> identifier) static <T> Converter<T>createConverter(FacesContext context, Object identifier) static <T> Converter<T>createConverter(FacesContext context, String identifier) static ResourcecreateResource(FacesContext context, UIComponent component) static ResourcecreateResource(FacesContext context, String resourceName) static ResourcecreateResource(FacesContext context, String libraryName, String resourceName) static ResourcecreateResource(FacesContext context, ResourceIdentifier resourceIdentifier) static <T> Validator<T>createValidator(FacesContext context, Class<?> identifier) static <T> Validator<T>createValidator(FacesContext context, Object identifier) static <T> Validator<T>createValidator(FacesContext context, String identifier) static <T> TevaluateExpressionGet(FacesContext context, String expression) static voidevaluateExpressionSet(FacesContext context, String expression, Object value) static <T> TgetApplicationAttribute(FacesContext context, String name) static <T> TgetApplicationAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) getApplicationMap(FacesContext context) static StringgetBookmarkableURL(FacesContext context, String viewId, Collection<? extends ParamHolder<?>> params, boolean includeViewParams) static StringgetBookmarkableURL(FacesContext context, String viewId, Map<String, List<String>> params, boolean includeViewParams) static StringgetBookmarkableURL(FacesContext context, Collection<? extends ParamHolder<?>> params, boolean includeViewParams) static StringgetBookmarkableURL(FacesContext context, Map<String, List<String>> params, boolean includeViewParams) static StringgetBundleString(FacesContext context, String key, Object... params) static <T> TgetContextAttribute(FacesContext context, String name) static <T> TgetContextAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) static LocalegetDefaultLocale(FacesContext context) static <T> TgetFaceletAttribute(FacesContext context, String name) static FaceletContextgetFaceletContext(FacesContext context) static FlashgetFlash(FacesContext context) static <T> TgetFlashAttribute(FacesContext context, String name) static <T> TgetFlashAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) getHashParameterMap(FacesContext context) static Collection<HashParam>getHashParameters(FacesContext context) static StringgetHashQueryString(FacesContext context) static StringgetImplInfo(FacesContext context) static StringgetInitParameter(FacesContext context, String name) getInitParameterMap(FacesContext context) static StringgetInitParameterOrDefault(FacesContext context, String name, String defaultValue) static LifecyclegetLifecycle(FacesContext context) static LocalegetLocale(FacesContext context) static StringgetMapping(FacesContext context) static ResourceBundlegetMessageBundle(FacesContext context) static <T> TgetMetadataAttribute(FacesContext context, String name) static <T> TgetMetadataAttribute(FacesContext context, String viewId, String name) getMetadataAttributes(FacesContext context) getMetadataAttributes(FacesContext context, String viewId) static StringgetMimeType(FacesContext context, String name) getMutableRequestHeaderMap(FacesContext context) static PackagegetPackage(FacesContext context) static ProjectStagegetProjectStage(FacesContext context) static StringgetRealPath(FacesContext context, String webContentPath) static StringgetReferrer(FacesContext context) static StringgetRemoteAddr(FacesContext context) static StringgetRemoteUser(FacesContext context) static RenderKitgetRenderKit(FacesContext context) static HttpServletRequestgetRequest(FacesContext context) static <T> TgetRequestAttribute(FacesContext context, String name) static <T> TgetRequestAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) static StringgetRequestBaseURL(FacesContext context) static StringgetRequestContextPath(FacesContext context) static StringgetRequestCookie(FacesContext context, String name) static StringgetRequestDomainURL(FacesContext context) static StringgetRequestHeader(FacesContext context, String name) getRequestHeaderMap(FacesContext context) static String[]getRequestHeaderValues(FacesContext context, String name) getRequestHeaderValuesMap(FacesContext context) static StringgetRequestHostname(FacesContext context) getRequestMap(FacesContext context) static StringgetRequestParameter(FacesContext context, String name) static <T> TgetRequestParameter(FacesContext context, String name, Class<T> type) static <T> TgetRequestParameter(FacesContext context, String name, Function<String, T> converter) static <T> TgetRequestParameter(FacesContext context, String name, Function<String, T> converter, Supplier<T> defaultValue) getRequestParameterMap(FacesContext context) static String[]getRequestParameterValues(FacesContext context, String name) static <T> T[]getRequestParameterValues(FacesContext context, String name, Class<T> type) getRequestParameterValuesMap(FacesContext context) static PartgetRequestPart(FacesContext context, String name) static Collection<Part>getRequestParts(FacesContext context) static Collection<Part>getRequestParts(FacesContext context, String name) static StringgetRequestPathInfo(FacesContext context) static StringgetRequestQueryString(FacesContext context) getRequestQueryStringMap(FacesContext context) static StringgetRequestServletPath(FacesContext context) static StringgetRequestURI(FacesContext context) static StringgetRequestURIWithQueryString(FacesContext context) static StringgetRequestURL(FacesContext context) static StringgetRequestURLWithQueryString(FacesContext context) static URLgetResource(FacesContext context, String path) static InputStreamgetResourceAsStream(FacesContext context, String path) static ResourceBundlegetResourceBundle(FacesContext context, String varName) static Map<String,ResourceBundle> getResourceBundles(FacesContext context) getResourcePaths(FacesContext context, String path) static HttpServletResponsegetResponse(FacesContext context) static intgetResponseBufferSize(FacesContext context) static StringgetResponseCharacterEncoding(FacesContext context) static Collection<String>getResponseHeaders(FacesContext context, String name) static Collection<ScriptParam>getScriptParameters(FacesContext context) static StringgetServerInfo(FacesContext context) static ServletContextgetServletContext(FacesContext context) static HttpSessiongetSession(FacesContext context) static HttpSessiongetSession(FacesContext context, boolean create) static <T> TgetSessionAttribute(FacesContext context, String name) static <T> TgetSessionAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) static longgetSessionCreationTime(FacesContext context) static StringgetSessionId(FacesContext context) static longgetSessionLastAccessedTime(FacesContext context) getSessionMap(FacesContext context) static intgetSupportedLocales(FacesContext context) static StringgetUserAgent(FacesContext context) static <T> TgetViewAttribute(FacesContext context, String name) static <T> TgetViewAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) static ViewDeclarationLanguagegetViewDeclarationLanguage(FacesContext context) static StringgetViewId(FacesContext context) static StringgetViewIdWithParameters(FacesContext context) getViewMap(FacesContext context) static StringgetViewName(FacesContext context) getViewParameterMap(FacesContext context) static Collection<UIViewParameter>getViewParameters(FacesContext context) static booleanhasSession(FacesContext context) static voidinvalidateSession(FacesContext context) static booleanisAjaxRequest(FacesContext context) static booleanstatic booleanisAuthenticated(FacesContext context) static booleanisDevelopment(FacesContext context) static booleanisOutputHtml5Doctype(FacesContext context) static booleanisPostback(FacesContext context) static booleanisPrefixMapping(FacesContext context) static booleanisProduction(FacesContext context) static booleanisRenderResponse(FacesContext context) static booleanisRequestedSessionExpired(FacesContext context) static booleanisRequestSecure(FacesContext context) static booleanisResponseCommitted(FacesContext context) static booleanisSessionNew(FacesContext context) static booleanisSystemTest(FacesContext context) static booleanisUserInRole(FacesContext context, String role) static voidlogin(FacesContext context, String username, String password) static voidlogout(FacesContext context) static voidnavigate(FacesContext context, String outcome) static StringnormalizeViewId(FacesContext context, String path) static voidredirect(FacesContext context, String url, Object... paramValues) static voidredirectPermanent(FacesContext context, String url, Object... paramValues) static voidrefresh(FacesContext context) static voidrefreshWithQueryString(FacesContext context) static <T> TremoveApplicationAttribute(FacesContext context, String name) static <T> TremoveFlashAttribute(FacesContext context, String name) static <T> TremoveRequestAttribute(FacesContext context, String name) static voidremoveResponseCookie(FacesContext context, String name, String path) static <T> TremoveSessionAttribute(FacesContext context, String name) static <T> TremoveViewAttribute(FacesContext context, String name) static voidresetResponse(FacesContext context) static <T> TresolveExpressionGet(FacesContext context, Object base, String property) static voidresolveExpressionSet(FacesContext context, Object base, String property, Object value) static voidresponseReset(FacesContext context) static voidresponseSendError(FacesContext context, int status, String message) static voidsendFile(FacesContext context, byte[] content, String filename, boolean attachment) static voidsendFile(FacesContext context, File file, boolean attachment) static voidsendFile(FacesContext context, File file, String filename, boolean attachment) static voidsendFile(FacesContext context, InputStream content, String filename, boolean attachment) static voidsendFile(FacesContext context, String filename, boolean attachment, FunctionalInterfaces.ThrowingConsumer<OutputStream> outputCallback) static voidsendFile(FacesContext context, Path path, boolean attachment) static voidsendFile(FacesContext context, Path path, String filename, boolean attachment) static voidsetApplicationAttribute(FacesContext context, String name, Object value) static voidsetContextAttribute(FacesContext context, String name, Object value) static voidsetFaceletAttribute(FacesContext context, String name, Object value) static voidsetFlashAttribute(FacesContext context, String name, Object value) static voidsetLocale(FacesContext context, Locale locale) static voidsetRequestAttribute(FacesContext context, String name, Object value) static voidsetResponseStatus(FacesContext context, int status) static voidsetSessionAttribute(FacesContext context, String name, Object value) static voidsetSessionMaxInactiveInterval(FacesContext context, int seconds) static voidsetViewAttribute(FacesContext context, String name, Object value) static voidsetViewRoot(FacesContext context, String viewId)
-
Method Details
-
getPackage
- See Also:
-
getImplInfo
- See Also:
-
getServerInfo
- See Also:
-
getProjectStage
- See Also:
-
isDevelopment
- See Also:
-
isSystemTest
- See Also:
-
isProduction
- See Also:
-
getMapping
- See Also:
-
isPrefixMapping
- See Also:
-
evaluateExpressionGet
- See Also:
-
evaluateExpressionSet
-
resolveExpressionGet
-
resolveExpressionSet
public static void resolveExpressionSet(FacesContext context, Object base, String property, Object value) -
getContextAttribute
- See Also:
-
getContextAttribute
public static <T> T getContextAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) -
setContextAttribute
-
createConverter
- See Also:
-
createConverter
- See Also:
-
createConverter
- See Also:
-
createValidator
- See Also:
-
createValidator
- See Also:
-
createValidator
- See Also:
-
createResource
- See Also:
-
createResource
public static Resource createResource(FacesContext context, String libraryName, String resourceName) - See Also:
-
createResource
- See Also:
-
createResource
- See Also:
-
getLifecycle
- See Also:
-
setViewRoot
- See Also:
-
getViewId
- See Also:
-
getViewIdWithParameters
- See Also:
-
getViewName
- See Also:
-
getViewDeclarationLanguage
- See Also:
-
getRenderKit
- See Also:
-
normalizeViewId
- See Also:
-
getViewParameters
- See Also:
-
getViewParameterMap
- See Also:
-
getHashParameters
- See Also:
-
getHashParameterMap
- See Also:
-
getHashQueryString
-
getScriptParameters
- See Also:
-
getMetadataAttributes
- See Also:
-
getMetadataAttributes
- See Also:
-
getMetadataAttribute
-
getMetadataAttribute
- See Also:
-
getLocale
- See Also:
-
getDefaultLocale
- See Also:
-
getSupportedLocales
- See Also:
-
setLocale
- See Also:
-
getMessageBundle
- See Also:
-
getResourceBundle
- See Also:
-
getResourceBundles
- See Also:
-
getBundleString
- See Also:
-
getBookmarkableURL
public static String getBookmarkableURL(FacesContext context, Map<String, List<String>> params, boolean includeViewParams) - See Also:
-
getBookmarkableURL
-
getBookmarkableURL
public static String getBookmarkableURL(FacesContext context, Collection<? extends ParamHolder<?>> params, boolean includeViewParams) -
getBookmarkableURL
public static String getBookmarkableURL(FacesContext context, String viewId, Collection<? extends ParamHolder<?>> params, boolean includeViewParams) -
isOutputHtml5Doctype
- See Also:
-
getFaceletContext
- See Also:
-
getFaceletAttribute
- See Also:
-
setFaceletAttribute
-
getRequest
- See Also:
-
isAjaxRequest
- See Also:
-
isAjaxRequestWithPartialRendering
-
isPostback
- See Also:
-
getRequestParameterMap
- See Also:
-
getMutableRequestParameterMap
- See Also:
-
getRequestParameter
- See Also:
-
getRequestParameter
- See Also:
-
getRequestParameter
public static <T> T getRequestParameter(FacesContext context, String name, Function<String, T> converter) -
getRequestParameter
public static <T> T getRequestParameter(FacesContext context, String name, Function<String, T> converter, Supplier<T> defaultValue) -
getRequestParameterValuesMap
- See Also:
-
getRequestParameterValues
- See Also:
-
getRequestParameterValues
-
getRequestParts
- See Also:
-
getRequestPart
- See Also:
-
getRequestParts
- See Also:
-
getRequestHeaderMap
- See Also:
-
getMutableRequestHeaderMap
- See Also:
-
getRequestHeader
- See Also:
-
getRequestHeaderValuesMap
- See Also:
-
getRequestHeaderValues
- See Also:
-
getRequestContextPath
- See Also:
-
getRequestServletPath
- See Also:
-
getRequestPathInfo
- See Also:
-
getRequestHostname
- See Also:
-
getRequestBaseURL
- See Also:
-
getRequestDomainURL
- See Also:
-
getRequestURL
- See Also:
-
getRequestURI
- See Also:
-
getRequestQueryString
- See Also:
-
getRequestQueryStringMap
- See Also:
-
getRequestURLWithQueryString
- See Also:
-
getRequestURIWithQueryString
- See Also:
-
getRemoteAddr
- See Also:
-
getUserAgent
- See Also:
-
getReferrer
- See Also:
-
isRequestSecure
- See Also:
-
getResponse
- See Also:
-
getResponseBufferSize
- See Also:
-
getResponseCharacterEncoding
- See Also:
-
setResponseStatus
- See Also:
-
redirect
- See Also:
-
redirectPermanent
-
refresh
- See Also:
-
refreshWithQueryString
- See Also:
-
resetResponse
- See Also:
-
responseSendError
- See Also:
-
addResponseHeader
- See Also:
-
getResponseHeaders
- See Also:
-
isResponseCommitted
- See Also:
-
responseReset
- See Also:
-
isRenderResponse
- See Also:
-
login
public static void login(FacesContext context, String username, String password) throws ServletException - Throws:
ServletException- See Also:
-
authenticate
- Throws:
ServletException- See Also:
-
isAuthenticated
- See Also:
-
logout
- Throws:
ServletException- See Also:
-
getRemoteUser
- See Also:
-
isUserInRole
- See Also:
-
getRequestCookie
- See Also:
-
addResponseCookie
-
addResponseCookie
public static void addResponseCookie(FacesContext context, String name, String value, String path, int maxAge) -
addResponseCookie
public static void addResponseCookie(FacesContext context, String name, String value, String domain, String path, int maxAge) -
addResponseCookie
public static void addResponseCookie(FacesContext context, String name, String value, String domain, String path, int maxAge, boolean httpOnly) -
addResponseCookie
-
removeResponseCookie
-
getSession
- See Also:
-
getSession
- See Also:
-
getSessionId
- See Also:
-
invalidateSession
- See Also:
-
hasSession
- See Also:
-
isSessionNew
- See Also:
-
isRequestedSessionExpired
- See Also:
-
getSessionCreationTime
- See Also:
-
getSessionLastAccessedTime
- See Also:
-
getSessionMaxInactiveInterval
- See Also:
-
setSessionMaxInactiveInterval
- See Also:
-
getServletContext
- See Also:
-
getInitParameterMap
- See Also:
-
getInitParameter
- See Also:
-
getInitParameterOrDefault
public static String getInitParameterOrDefault(FacesContext context, String name, String defaultValue) -
getMimeType
- See Also:
-
getResource
- Throws:
MalformedURLException- See Also:
-
getResourceAsStream
- See Also:
-
getResourcePaths
- See Also:
-
getRealPath
- See Also:
-
getRequestMap
- See Also:
-
getRequestAttribute
- See Also:
-
getRequestAttribute
public static <T> T getRequestAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) -
setRequestAttribute
-
removeRequestAttribute
- See Also:
-
getFlash
- See Also:
-
getFlashAttribute
- See Also:
-
getFlashAttribute
public static <T> T getFlashAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) -
setFlashAttribute
- See Also:
-
removeFlashAttribute
- See Also:
-
getViewMap
- See Also:
-
getViewAttribute
- See Also:
-
getViewAttribute
public static <T> T getViewAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) - See Also:
-
setViewAttribute
- See Also:
-
removeViewAttribute
- See Also:
-
getSessionMap
- See Also:
-
getSessionAttribute
- See Also:
-
getSessionAttribute
public static <T> T getSessionAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) -
setSessionAttribute
-
removeSessionAttribute
- See Also:
-
getApplicationMap
- See Also:
-
getApplicationAttribute
- See Also:
-
getApplicationAttribute
public static <T> T getApplicationAttribute(FacesContext context, String name, Supplier<T> computeIfAbsent) -
setApplicationAttribute
-
removeApplicationAttribute
- See Also:
-
sendFile
- Throws:
IOException- See Also:
-
sendFile
public static void sendFile(FacesContext context, File file, String filename, boolean attachment) throws IOException - Throws:
IOException- See Also:
-
sendFile
- Throws:
IOException- See Also:
-
sendFile
public static void sendFile(FacesContext context, Path path, String filename, boolean attachment) throws IOException - Throws:
IOException- See Also:
-
sendFile
public static void sendFile(FacesContext context, byte[] content, String filename, boolean attachment) - See Also:
-
sendFile
public static void sendFile(FacesContext context, InputStream content, String filename, boolean attachment) -
sendFile
public static void sendFile(FacesContext context, String filename, boolean attachment, FunctionalInterfaces.ThrowingConsumer<OutputStream> outputCallback)
-