@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectOne", "javax.faces.Menu", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
public static <T extends Renderer> T getUnwrappedRenderer(FacesContext context, String family, String rendererType, Class<T> rendererClass) { Renderer renderer = context.getRenderKit().getRenderer(family, rendererType); while (renderer instanceof FacesWrapper) { renderer = (Renderer) ((FacesWrapper) renderer).getWrapped(); } return (T) renderer; }
@Override public boolean getRendersChildren() { if (getRendererType() != null) { Renderer renderer = getRenderer(getFacesContext()); if (renderer != null) { return renderer.getRendersChildren(); } } return true; }
/** * <p>The default behavior of this method is to * call {@link RenderKit#getRenderer(String, String)} * on the wrapped {@link RenderKit} object.</p> * * @see RenderKit#getRenderer(String, String) */ @Override public Renderer getRenderer(String family, String rendererType) { return getWrapped().getRenderer(family, rendererType); }
@Override public void encodeBegin(FacesContext context) throws IOException { preEncode(context); if (context == null) { throw new NullPointerException(); } pushComponentToEL(context, null); if (!isRendered()) { return; } context.getApplication().publishEvent(context, PreRenderComponentEvent.class, this); String rendererType = getRendererType(); if (rendererType != null) { Renderer renderer = getRenderer(context); if (renderer != null) { renderer.encodeBegin(context, this); } } } }
renderer.encodeChildren(faces, this);
/** * <p>The default behavior of this method is to * call {@link RenderKit#createResponseStream(java.io.OutputStream)} * on the wrapped {@link RenderKit} object.</p> * * @see RenderKit#createResponseStream(java.io.OutputStream) */ @Override public ResponseStream createResponseStream(OutputStream out) { return getWrapped().createResponseStream(out); }
clientId = renderer.convertClientId(context, clientId);
/** * <p>The default behavior of this method is to * call {@link javax.faces.render.RenderKit#getClientBehaviorRendererTypes()} * on the wrapped {@link RenderKit} object.</p> * * @see javax.faces.render.RenderKit#getClientBehaviorRendererTypes() */ @Override public Iterator<String> getClientBehaviorRendererTypes() { return getWrapped().getClientBehaviorRendererTypes(); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectOne", "javax.faces.Radio", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
renderer.encodeChildren(faces, this);
@Override public boolean getRendersChildren() { if (getRendererType() != null) { Renderer renderer = getRenderer(getFacesContext()); if (renderer != null) { return renderer.getRendersChildren(); } } return true; }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectMany", "javax.faces.Checkbox", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectMany", "javax.faces.Checkbox", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectOne", "javax.faces.Listbox", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectMany", "javax.faces.Menu", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectMany", "javax.faces.Checkbox", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectOne", "javax.faces.Radio", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public Object getConvertedValue(FacesContext context, UIComponent component, Object submittedValue) throws ConverterException { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectOne", "javax.faces.Listbox", Renderer.class); return renderer.getConvertedValue(context, component, submittedValue); }
@Override public void queueEvent(FacesEvent event) { if (event instanceof AjaxBehaviorEvent) { FacesContext context = getFacesContext(); AjaxBehaviorEvent behaviorEvent = (AjaxBehaviorEvent) event; Map<String, String> params = context.getExternalContext().getRequestParameterMap(); String eventName = params.get(Constants.RequestParams.PARTIAL_BEHAVIOR_EVENT_PARAM); if ("itemSelect".equals(eventName)) { Renderer renderer = ComponentUtils.getUnwrappedRenderer( context, "javax.faces.SelectOne", "javax.faces.Menu", Renderer.class); Object item = renderer.getConvertedValue(context, this, getSubmittedValue()); SelectEvent selectEvent = new SelectEvent(this, behaviorEvent.getBehavior(), item); selectEvent.setPhaseId(event.getPhaseId()); super.queueEvent(selectEvent); } else { super.queueEvent(event); } } else { super.queueEvent(event); } }