protected Converter findImplicitConverter(FacesContext context, UIComponent component) { ValueExpression ve = component.getValueExpression("value"); if (ve != null) { Class<?> valueType = ve.getType(context.getELContext()); if (valueType != null) { if (valueType.isArray()) { valueType = valueType.getComponentType(); } return context.getApplication().createConverter(valueType); } } return null; }
@Override public VisitResult visit(VisitContext context, UIComponent target) { if (target instanceof EditableValueHolder) { EditableValueHolder input = (EditableValueHolder) target; input.resetValue(); if (clearModel) { ValueExpression ve = target.getValueExpression("value"); if (ve != null) { ve.setValue(context.getFacesContext().getELContext(), null); } } } return VisitResult.ACCEPT; } }
context.getELContext(), component.getValueExpression("value"));
context, applicationContext, component.getValueExpression("value"));
/** * Finds appropriate converter for a given value holder * * @param context FacesContext instance * @param component ValueHolder instance to look converter for * @return Converter */ public static Converter getConverter(FacesContext context, UIComponent component) { if (!(component instanceof ValueHolder)) { return null; } Converter converter = ((ValueHolder) component).getConverter(); if (converter != null) { return converter; } ValueExpression valueExpression = component.getValueExpression("value"); if (valueExpression == null) { return null; } Class<?> converterType = valueExpression.getType(context.getELContext()); if (converterType == null || converterType == Object.class) { // no conversion is needed return null; } if (converterType == String.class && !PrimeApplicationContext.getCurrentInstance(context).getConfig().isStringConverterAvailable()) { return null; } return context.getApplication().createConverter(converterType); }
public ValueExpression getExpression(String name) { ValueExpression valueExpr = _component.getValueExpression(name); return valueExpr; }
/** * @see javax.faces.component.UIComponent#getValueExpression(java.lang.String) */ public ValueExpression getValueExpression(String name) { return parent.getValueExpression(name); }
/** * @see javax.faces.component.UIComponent#getValueExpression(java.lang.String) */ @Override public ValueExpression getValueExpression(String name) { return parent.getValueExpression(name); }
public ValueExpression getExpression(String name) { ValueExpression valueExpr = _component.getValueExpression(name); return valueExpr; }
public static ValueExpression getValueExpressionNullSafe(UIComponent component, String name) { ValueExpression valueExpression = component.getValueExpression(name); notNullAttribute(name, valueExpression); return valueExpression; }
private static void resetDataModel(FacesContext context, UIComponent component) { if (component instanceof UIDataAdaptor) { ((UIDataAdaptor) component).resetDataModel(); } else if (component instanceof UIData) { // hack to reset cached data model component.setValueExpression("value", component.getValueExpression("value")); } else { throw new IllegalArgumentException(component.toString()); } } }
private Object resolveLabel(FacesContext facesContext, UIComponent component) { Object lbl = component.getAttributes().get("label"); if (lbl == null || (lbl instanceof String && ((String) lbl).length() == 0)) { lbl = component.getValueExpression("label"); } if (lbl == null) { lbl = component.getClientId(facesContext); } return lbl; }
public boolean isColumnAttributeSet(UIDataTableBase table, String attributeName) { Iterator<UIComponent> columns = table.columns(); boolean result = false; while (columns.hasNext() && !result) { UIComponent component = columns.next(); result = (component.isRendered() && (null != component.getValueExpression(attributeName))); } return result; }
private static void mapAttributes(UIComponent component, AjaxBehavior behavior, String... attributeNames) { for (String attributeName : attributeNames) { ValueExpression binding = component.getValueExpression(attributeName); if (binding == null) { Object value = component.getAttributes().get(attributeName); if (value != null) { binding = ELUtils.createValueExpression(value.toString(), value.getClass()); } } behavior.setValueExpression(attributeName, binding); } }
static String getLabel(FacesContext facesContext, UIComponent component) { Object label = component.getAttributes().get("label"); if(label != null) return label.toString(); ValueExpression expression = component.getValueExpression("label"); if(expression != null) return expression.getExpressionString(); //return (String)expression.getValue(facesContext.getELContext()); //If no label is not specified, use clientId return component.getClientId( facesContext ); } }
private Converter findImplicitConverter(FacesContext context, UIComponent component) { ValueExpression ve = component.getValueExpression("value"); if (ve != null) { Class<?> valueType = ve.getType(context.getELContext()); if (valueType != null) return context.getApplication().createConverter(valueType); } return null; }
private Converter findImplicitConverter(FacesContext context, UIComponent component) { ValueExpression ve = component.getValueExpression("value"); if (ve != null) { Class<?> valueType = ve.getType(context.getELContext()); if (valueType != null) return context.getApplication().createConverter(valueType); } return null; }
private void applyMassAttribute(FaceletContext context, List<UIComponent> children) { for (UIComponent component : children) { if ((targetClass == null || targetClass.isAssignableFrom(component.getClass())) && component.getValueExpression(name) == null) { Object literalValue = component.getAttributes().get(name); if (literalValue == null || literalValue instanceof Boolean) { Class<?> type = (literalValue == null) ? Object.class : Boolean.class; component.setValueExpression(name, value.getValueExpression(context, type)); } } applyMassAttribute(context, component.getChildren()); } }
private Converter getConverterForValue(FacesContext context, UIComponent component) { Converter converter = ((ValueHolder) component).getConverter(); if (converter == null) { ValueExpression expression = component.getValueExpression("value"); if (expression != null) { Class<?> containerClass = ServiceTracker.getService(context, GenericsIntrospectionService.class) .getContainerClass(context, expression); converter = InputUtils.getConverterForType(context, containerClass); } } return converter; }
@Override public Object getValue() { Class c = getParent().getValueExpression("value").getType(getFacesContext().getELContext()); String enumValue = getEnumValue(); String label = getLabel(); Object value = Enum.valueOf(c, enumValue); return new SelectItem(value, label == null ? enumValue : label); } }