public void processDynaView ( final PrettyContext prettyContext , final FacesContext facesContext ) { log . trace ( "Requesting DynaView processing for: " + prettyContext . getRequestURL ( ) ) ; String viewId = "" ; try { viewId = prettyContext . getCurrentViewId ( ) ; log . trace ( "Invoking DynaView method: " + viewId ) ; Object result = computeDynaViewId ( facesContext ) ; if ( result instanceof String ) { viewId = ( String ) result ; log . trace ( "Forwarding to DynaView: " + viewId ) ; prettyContext . setDynaviewProcessed ( true ) ; facesContext . getExternalContext ( ) . dispatch ( viewId ) ; facesContext . responseComplete ( ) ; } } catch ( Exception e ) { log . error ( "Failed to process dynaview" , e ) ; PrettyRedirector prettyRedirector = new PrettyRedirector ( ) ; prettyRedirector . send404 ( facesContext ) ; throw new PrettyException ( "Could not forward to view: " + viewId + "" , e ) ; } }
Handle DynaView processing . This method will end the Faces life - cycle .