/** * Builds the view if not already available. This is mostly required for ViewExpiredException's. * * @param context The {@link FacesContext}. * @param throwable The occurred {@link Throwable}. * @param rootCause The root cause. * @return The unwrapped {@link Throwable}. * @throws java.io.IOException If building the view fails. */ protected Throwable buildView(FacesContext context, Throwable throwable, Throwable rootCause) throws IOException { if (context.getViewRoot() == null) { ViewHandler viewHandler = context.getApplication().getViewHandler(); String viewId = viewHandler.deriveViewId(context, ComponentUtils.calculateViewId(context)); ViewDeclarationLanguage vdl = viewHandler.getViewDeclarationLanguage(context, viewId); UIViewRoot viewRoot = vdl.createView(context, viewId); context.setViewRoot(viewRoot); vdl.buildView(context, viewRoot); // Workaround for Mojarra // if UIViewRoot == null -> 'IllegalArgumentException' is throwed instead of 'ViewExpiredException' if (rootCause == null && throwable instanceof IllegalArgumentException) { rootCause = new javax.faces.application.ViewExpiredException(viewId); } } return rootCause; }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return delegate.createView(context, viewId); }
String viewId = "/path/to/some.xhtml"; FacesContext context = FacesContext.getCurrentInstance(); ViewDeclarationLanguage vdl = context.getApplication().getViewHandler().getViewDeclarationLanguage(context, viewId); UIViewRoot view = vdl.createView(context, viewId); vdl.buildView(context, view); // view should now have children.
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { return getWrapped().createView(context, viewId); }
/** * <p> * Derive the actual view ID (i.e. the physical resource) and call * call {@link ViewDeclarationLanguage#createView(javax.faces.context.FacesContext, String)}. * </p> * * @see ViewHandler#restoreView(javax.faces.context.FacesContext, String) */ public UIViewRoot createView(FacesContext context, String viewId) { Util.notNull("context", context); String actualViewId = derivePhysicalViewId(context, viewId, false); return vdlFactory.getViewDeclarationLanguage(actualViewId).createView(context, actualViewId); }
/** * <p> * Derive the physical view ID (i.e. the physical resource) and call * call {@link ViewDeclarationLanguage#createView(javax.faces.context.FacesContext, String)}. * </p> * * @see ViewHandler#restoreView(javax.faces.context.FacesContext, String) */ @Override public UIViewRoot createView(FacesContext context, String viewId) { notNull("context", context); String physicalViewId = derivePhysicalViewId(context, viewId, false); return vdlFactory.getViewDeclarationLanguage(physicalViewId) .createView(context, physicalViewId); }
/** * <p> * Derive the physical view ID (i.e. the physical resource) and call * call {@link ViewDeclarationLanguage#createView(javax.faces.context.FacesContext, String)}. * </p> * * @see ViewHandler#restoreView(javax.faces.context.FacesContext, String) */ @Override public UIViewRoot createView(FacesContext context, String viewId) { notNull("context", context); String physicalViewId = derivePhysicalViewId(context, viewId, false); return vdlFactory.getViewDeclarationLanguage(physicalViewId) .createView(context, physicalViewId); }
/** * <p> * Derive the physical view ID (i.e. the physical resource) and call * call {@link ViewDeclarationLanguage#createView(javax.faces.context.FacesContext, String)}. * </p> * * @see ViewHandler#restoreView(javax.faces.context.FacesContext, String) */ @Override public UIViewRoot createView(FacesContext context, String viewId) { notNull("context", context); String physicalViewId = derivePhysicalViewId(context, viewId, false); return vdlFactory.getViewDeclarationLanguage(physicalViewId) .createView(context, physicalViewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { checkNull(context, "facesContext"); String calculatedViewId = getViewHandlerSupport().calculateViewId(context, viewId); // we cannot use this.getVDL() directly (see getViewHandler()) //return getViewHandler(context) // .getViewDeclarationLanguage(context, calculatedViewId) // .createView(context, calculatedViewId); // -= Leonardo Uribe =- Temporally reverted by TCK issues. return getViewDeclarationLanguage(context,calculatedViewId).createView(context,calculatedViewId); }
@Override public UIViewRoot createView(FacesContext context, String viewId) { checkNull(context, "facesContext"); String calculatedViewId = getViewHandlerSupport().calculateViewId(context, viewId); // we cannot use this.getVDL() directly (see getViewHandler()) //return getViewHandler(context) // .getViewDeclarationLanguage(context, calculatedViewId) // .createView(context, calculatedViewId); // -= Leonardo Uribe =- Temporally reverted by TCK issues. return getViewDeclarationLanguage(context,calculatedViewId).createView(context,calculatedViewId); }
/** * Builds the view if not already available. This is mostly required for ViewExpiredException's. * * @param context The {@link FacesContext}. * @param throwable The occurred {@link Throwable}. * @param rootCause The root cause. * @return The unwrapped {@link Throwable}. * @throws java.io.IOException If building the view fails. */ protected Throwable buildView(FacesContext context, Throwable throwable, Throwable rootCause) throws IOException { if (context.getViewRoot() == null) { ViewHandler viewHandler = context.getApplication().getViewHandler(); String viewId = viewHandler.deriveViewId(context, ComponentUtils.calculateViewId(context)); ViewDeclarationLanguage vdl = viewHandler.getViewDeclarationLanguage(context, viewId); UIViewRoot viewRoot = vdl.createView(context, viewId); context.setViewRoot(viewRoot); vdl.buildView(context, viewRoot); // Workaround for Mojarra // if UIViewRoot == null -> 'IllegalArgumentException' is throwed instead of 'ViewExpiredException' if (rootCause == null && throwable instanceof IllegalArgumentException) { rootCause = new javax.faces.application.ViewExpiredException(viewId); } } return rootCause; }
@Override public UIViewRoot createView(FacesContext context, String viewId) { checkNull(context, "facesContext"); String calculatedViewId = getViewHandlerSupport(context).calculateViewId(context, viewId); // we cannot use this.getVDL() directly (see getViewHandler()) //return getViewHandler(context) // .getViewDeclarationLanguage(context, calculatedViewId) // .createView(context, calculatedViewId); // -= Leonardo Uribe =- Temporally reverted by TCK issues. ViewDeclarationLanguage vdl = getViewDeclarationLanguage(context,calculatedViewId); if (vdl == null) { // If there is no VDL that can handle the view, throw 404 response. sendSourceNotFound(context, viewId); return null; } return vdl.createView(context,calculatedViewId); }