private Converter findUIOutputConverter(FacesContext facesContext, UIComponent component) { Converter converter = null; if (component instanceof ValueHolder) { converter = ((ValueHolder)component).getConverter(); } if (converter != null) return converter; //Try to find out by value binding ValueBinding vb = component.getValueBinding("value"); if (vb == null) return null; Class valueType = vb.getType(facesContext); if (valueType == null) return null; if (String.class.equals(valueType)) return null; //No converter needed for String type if (Object.class.equals(valueType)) return null; //There is no converter for Object class try { return facesContext.getApplication().createConverter(valueType); } catch (FacesException e) { getFacesContext().getExternalContext().log("No Converter for type " + valueType.getName() + " found", e); return null; } }
private Converter findUIOutputConverter(FacesContext facesContext, UIComponent component) { Converter converter = null; if (component instanceof ValueHolder) { converter = ((ValueHolder)component).getConverter(); } if (converter != null) return converter; //Try to find out by value binding ValueExpression vb = component.getValueExpression("value"); if (vb == null) return null; Class valueType = vb.getType(facesContext.getELContext()); if (valueType == null) return null; if (String.class.equals(valueType)) return null; //No converter needed for String type if (Object.class.equals(valueType)) return null; //There is no converter for Object class try { return facesContext.getApplication().createConverter(valueType); } catch (FacesException e) { getFacesContext().getExternalContext().log("No Converter for type " + valueType.getName() + " found", e); return null; } }
private Renderer getRenderer(FacesContext context, UIComponent foreignComponent) { if (context == null) throw new NullPointerException("context"); String rendererType = foreignComponent.getRendererType(); if (rendererType == null) return null; String renderKitId = context.getViewRoot().getRenderKitId(); RenderKitFactory rkf = (RenderKitFactory)FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY); RenderKit renderKit = rkf.getRenderKit(context, renderKitId); Renderer renderer = renderKit.getRenderer(foreignComponent.getFamily(), rendererType); if (renderer == null) { getFacesContext().getExternalContext().log("No Renderer found for component " + foreignComponent + " (component-family=" + foreignComponent.getFamily() + ", renderer-type=" + rendererType + ")"); } return renderer; }
private Renderer getRenderer(FacesContext context, UIComponent foreignComponent) { if (context == null) throw new NullPointerException("context"); String rendererType = foreignComponent.getRendererType(); if (rendererType == null) return null; String renderKitId = context.getViewRoot().getRenderKitId(); RenderKitFactory rkf = (RenderKitFactory)FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY); RenderKit renderKit = rkf.getRenderKit(context, renderKitId); Renderer renderer = renderKit.getRenderer(foreignComponent.getFamily(), rendererType); if (renderer == null) { getFacesContext().getExternalContext().log("No Renderer found for component " + foreignComponent + " (component-family=" + foreignComponent.getFamily() + ", renderer-type=" + rendererType + ")"); } return renderer; }
getFacesContext().getExternalContext().log("No Converter for type " + valueType.getName() + " found", e); return null;
private Renderer getRenderer(FacesContext context, UIComponent foreignComponent) { if (context == null) { throw new NullPointerException("context"); } String rendererType = foreignComponent.getRendererType(); if (rendererType == null) { return null; } String renderKitId = context.getViewRoot().getRenderKitId(); RenderKitFactory rkf = (RenderKitFactory)FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY); RenderKit renderKit = rkf.getRenderKit(context, renderKitId); Renderer renderer = renderKit.getRenderer(foreignComponent.getFamily(), rendererType); if (renderer == null) { getFacesContext().getExternalContext().log("No Renderer found for component " + foreignComponent + " (component-family=" + foreignComponent.getFamily() + ", renderer-type=" + rendererType + ")"); } return renderer; }