public abstract class ViewHandlerWrapper extends ViewHandler implements FacesWrapper<ViewHandler>
CHARACTER_ENCODING_KEY, DEFAULT_FACELETS_SUFFIX, DEFAULT_SUFFIX, DEFAULT_SUFFIX_PARAM_NAME, DISABLE_FACELET_JSF_VIEWHANDLER_PARAM_NAME, FACELETS_BUFFER_SIZE_PARAM_NAME, FACELETS_DECORATORS_PARAM_NAME, FACELETS_LIBRARIES_PARAM_NAME, FACELETS_REFRESH_PERIOD_PARAM_NAME, FACELETS_SKIP_COMMENTS_PARAM_NAME, FACELETS_SUFFIX_PARAM_NAME, FACELETS_VIEW_MAPPINGS_PARAM_NAME
Constructor and Description |
---|
ViewHandlerWrapper()
Deprecated.
|
ViewHandlerWrapper(ViewHandler delegate) |
Modifier and Type | Method and Description |
---|---|
void |
addProtectedView(String urlPattern) |
String |
calculateCharacterEncoding(FacesContext context) |
Locale |
calculateLocale(FacesContext context)
Return the Locale object that should be used when rendering this view to the current user.
|
String |
calculateRenderKitId(FacesContext context)
Return the id of an available render-kit that should be used to map the JSF components into user presentation.
|
UIViewRoot |
createView(FacesContext context,
String viewId)
Build a root node for a component tree.
|
String |
deriveLogicalViewId(FacesContext context,
String rawViewId) |
String |
deriveViewId(FacesContext context,
String input) |
String |
getActionURL(FacesContext context,
String viewId)
Returns a URL, suitable for encoding and rendering, that (if activated) will cause the JSF
request processing lifecycle for the specified viewId to be executed
|
String |
getBookmarkableURL(FacesContext context,
String viewId,
Map<String,List<String>> parameters,
boolean includeViewParams)
Return a JSF action URL derived from the viewId argument that is suitable to be used as
the target of a link in a JSF response.
|
Set<String> |
getProtectedViewsUnmodifiable() |
String |
getRedirectURL(FacesContext context,
String viewId,
Map<String,List<String>> parameters,
boolean includeViewParams)
Return a JSF action URL derived from the viewId argument that is suitable to be used by
the NavigationHandler to issue a redirect request to the URL using a NonFaces request.
|
String |
getResourceURL(FacesContext context,
String path)
Returns a URL, suitable for encoding and rendering, that (if activated)
will retrieve the specified web application resource.
|
ViewDeclarationLanguage |
getViewDeclarationLanguage(FacesContext context,
String viewId)
Return the ViewDeclarationLanguage instance used for this ViewHandler instance.
|
Stream<String> |
getViews(FacesContext facesContext,
String path,
int maxDepth,
ViewVisitOption... options) |
Stream<String> |
getViews(FacesContext facesContext,
String path,
ViewVisitOption... options) |
String |
getWebsocketURL(FacesContext context,
String channelAndToken)
Return a JSF URL that represents a websocket connection for the passed channel and channelToken
|
ViewHandler |
getWrapped()
A class that implements this interface uses this method to return an instance of the class being wrapped.
|
void |
initView(FacesContext context)
Initialize the view for the request processing lifecycle.
|
boolean |
removeProtectedView(String urlPattern) |
void |
renderView(FacesContext context,
UIViewRoot viewToRender)
Perform whatever actions are required to render the response view to the
response object associated with the current FacesContext.
|
UIViewRoot |
restoreView(FacesContext context,
String viewId)
Perform whatever actions are required to restore the view associated with the
specified FacesContext and viewId.
|
void |
writeState(FacesContext context)
Take any appropriate action to either immediately write out the current state information
(by calling StateManager.writeState(javax.faces.context.FacesContext, java.lang.Object),
or noting where state information should later be written.
|
@Deprecated public ViewHandlerWrapper()
public ViewHandlerWrapper(ViewHandler delegate)
public String calculateCharacterEncoding(FacesContext context)
calculateCharacterEncoding
in class ViewHandler
public void initView(FacesContext context) throws FacesException
ViewHandler
This method must be called at the beginning of the Restore View Phase of the Request Processing Lifecycle. It is responsible for performing any per-request initialization necessary to the operation of the lifycecle.
The default implementation must perform the following actions. If ExternalContext.getRequestCharacterEncoding() returns null, call calculateCharacterEncoding(javax.faces.context.FacesContext) and pass the result, if non-null, into the ExternalContext.setRequestCharacterEncoding(java.lang.String) method. If ExternalContext.getRequestCharacterEncoding() returns non-null take no action.
initView
in class ViewHandler
FacesException
public ViewHandler getWrapped()
FacesWrapper
getWrapped
in interface FacesWrapper<ViewHandler>
public void renderView(FacesContext context, UIViewRoot viewToRender) throws IOException, FacesException
ViewHandler
Otherwise, the default implementation must obtain a reference to the ViewDeclarationLanguage for the viewId of the argument viewToRender and call its ViewDeclarationLanguage.renderView(javax.faces.context.FacesContext, javax.faces.component.UIViewRoot) method, returning the result and not swallowing any exceptions thrown by that method.
renderView
in class ViewHandler
IOException
FacesException
public void writeState(FacesContext context) throws IOException
ViewHandler
This method must do nothing if the current request is an Ajax request. When responding to Ajax requests, the state is obtained by calling StateManager.getViewState(javax.faces.context.FacesContext) and then written into the Ajax response during final encoding (UIViewRoot.encodeEnd(javax.faces.context.FacesContext).
writeState
in class ViewHandler
IOException
public String calculateRenderKitId(FacesContext context)
ViewHandler
The render-kit selected (eg html, xhtml, pdf, xul, ...) may depend upon the user, properties associated with the request, etc.
calculateRenderKitId
in class ViewHandler
public Locale calculateLocale(FacesContext context)
ViewHandler
Some request protocols allow an application user to specify what locale they prefer the response to be in. For example, HTTP requests can specify the "accept-language" header.
Method Application.getSupportedLocales()
defines what locales this JSF
application is capable of supporting.
This method should match such sources of data up and return the Locale object that is the best choice for rendering the current application to the current user.
calculateLocale
in class ViewHandler
public UIViewRoot restoreView(FacesContext context, String viewId)
ViewHandler
Otherwise, the default implementation must obtain a reference to the ViewDeclarationLanguage for this viewId and call its ViewDeclarationLanguage.restoreView(javax.faces.context.FacesContext, java.lang.String) method, returning the result and not swallowing any exceptions thrown by that method.
restoreView
in class ViewHandler
public String getResourceURL(FacesContext context, String path)
ViewHandler
getResourceURL
in class ViewHandler
public String getActionURL(FacesContext context, String viewId)
ViewHandler
getActionURL
in class ViewHandler
public UIViewRoot createView(FacesContext context, String viewId)
ViewHandler
When a request is received, this method is called if restoreView returns null, ie this is not a "postback". In this case, a root node is created and then renderView is invoked. It is the responsibility of the renderView method to build the full component tree (ie populate the UIViewRoot with descendant nodes).
This method is also invoked when navigation occurs from one view to another, where the viewId passed is the id of the new view to be displayed. Again it is the responsibility of renderView to then populate the viewroot with descendants.
The locale and renderKit settings are inherited from the current UIViewRoot that is configured before this method is called. That means of course that they do NOT get set for GET requests, including navigation that has the redirect flag set.
createView
in class ViewHandler
public String deriveViewId(FacesContext context, String input)
deriveViewId
in class ViewHandler
public String deriveLogicalViewId(FacesContext context, String rawViewId)
deriveLogicalViewId
in class ViewHandler
public String getBookmarkableURL(FacesContext context, String viewId, Map<String,List<String>> parameters, boolean includeViewParams)
ViewHandler
getBookmarkableURL
in class ViewHandler
public String getRedirectURL(FacesContext context, String viewId, Map<String,List<String>> parameters, boolean includeViewParams)
ViewHandler
getRedirectURL
in class ViewHandler
public ViewDeclarationLanguage getViewDeclarationLanguage(FacesContext context, String viewId)
ViewHandler
The default implementation of this method returns null.
getViewDeclarationLanguage
in class ViewHandler
public Set<String> getProtectedViewsUnmodifiable()
getProtectedViewsUnmodifiable
in class ViewHandler
public boolean removeProtectedView(String urlPattern)
removeProtectedView
in class ViewHandler
public void addProtectedView(String urlPattern)
addProtectedView
in class ViewHandler
public String getWebsocketURL(FacesContext context, String channelAndToken)
ViewHandler
getWebsocketURL
in class ViewHandler
public Stream<String> getViews(FacesContext facesContext, String path, int maxDepth, ViewVisitOption... options)
getViews
in class ViewHandler
public Stream<String> getViews(FacesContext facesContext, String path, ViewVisitOption... options)
getViews
in class ViewHandler
Copyright © 2019 The Apache Software Foundation. All rights reserved.