org.apache.myfaces.orchestra.urlParamNav
Class UrlParameterViewHandler

java.lang.Object
  extended by javax.faces.application.ViewHandler
      extended by javax.faces.application.ViewHandlerWrapper
          extended by org.apache.myfaces.orchestra.urlParamNav.UrlParameterViewHandler
All Implemented Interfaces:
javax.faces.FacesWrapper<javax.faces.application.ViewHandler>

public class UrlParameterViewHandler
extends javax.faces.application.ViewHandlerWrapper

Allow the to-view-id URL in a faces-config navigation case to include query parameters and EL expressions.

This class plays a few tricks to hide from the real NavigationHandler and ViewHandler classes the fact that a URL contains non-standard data.

This class also plays a few reflection-based tricks so that the code can be compiled against JSF1.1, and work with both JSF1.1 and JSF1.2. The code is a little fragile and will probably need to be updated to work correctly with JSF2.0, but that is the fault of the JSF spec.


Field Summary
 
Fields inherited from class javax.faces.application.ViewHandler
CHARACTER_ENCODING_KEY, DEFAULT_FACELETS_SUFFIX, DEFAULT_SUFFIX, DEFAULT_SUFFIX_PARAM_NAME, FACELETS_SUFFIX_PARAM_NAME, FACELETS_VIEW_MAPPINGS_PARAM_NAME
 
Constructor Summary
UrlParameterViewHandler(javax.faces.application.ViewHandler original)
          Constructor.
 
Method Summary
 java.lang.String getActionURL(javax.faces.context.FacesContext context, java.lang.String viewId)
           
 javax.faces.application.ViewHandler getWrapped()
           
 
Methods inherited from class javax.faces.application.ViewHandlerWrapper
calculateCharacterEncoding, calculateLocale, calculateRenderKitId, createView, getResourceURL, initView, renderView, restoreView, writeState
 
Methods inherited from class javax.faces.application.ViewHandler
deriveViewId, getBookmarkableURL, getRedirectURL, getViewDeclarationLanguage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UrlParameterViewHandler

public UrlParameterViewHandler(javax.faces.application.ViewHandler original)
Constructor.

Method Detail

getWrapped

public javax.faces.application.ViewHandler getWrapped()
Specified by:
getWrapped in interface javax.faces.FacesWrapper<javax.faces.application.ViewHandler>
Overrides:
getWrapped in class javax.faces.application.ViewHandlerWrapper

getActionURL

public java.lang.String getActionURL(javax.faces.context.FacesContext context,
                                     java.lang.String viewId)
Overrides:
getActionURL in class javax.faces.application.ViewHandlerWrapper


Copyright © 2009 The Apache Software Foundation. All Rights Reserved.