}
@Override
protected void setProperties(final UIComponent uiComponent) {
super.setProperties(uiComponent);
final UIHidden component = (UIHidden) uiComponent;
final FacesContext context = FacesContext.getCurrentInstance();
final Application application = context.getApplication();
if (converter != null) {
if (!converter.isLiteralText()) {
component.setValueExpression("converter", converter);
} else {
component.setConverter(application.createConverter(converter.getExpressionString()));
}
}
if (validator != null) {
component.addValidator(new javax.faces.validator.MethodExpressionValidator(validator));
}
if (value != null) {
component.setValueExpression("value", value);
}
if (readonly != null) {
if (!readonly.isLiteralText()) {
component.setValueExpression("readonly", readonly);
} else {
component.setReadonly(Boolean.parseBoolean(readonly.getExpressionString()));
}
}
if (disabled != null) {
if (!disabled.isLiteralText()) {
component.setValueExpression("disabled", disabled);
} else {
component.setDisabled(Boolean.parseBoolean(disabled.getExpressionString()));
}
}
}