#jsf #composite-component #wildfly #mojarra
#jsf #составной компонент #wildfly #mojarra
Вопрос:
Я пытаюсь динамически добавлять скрытое поле ввода в мой составной компонент. Проблема в том, что я почему-то не могу получить доступ к свойству моего резервного facescomponent с выражением value. Пример:
public void encodeBegin(FacesContext context) throws IOException {
HtmlInputHidden someInput = new HtmlInputHidden();
someInput.setValueExpression("value", createValueExpression("#{cc ne null}", String.class)); //this will be rendered to <input type="hidden" value="false"/>
...
}
Когда я использую компонент, управляемый CDI, в выражении значения, это работает.
Когда я добавляю поле ввода с доступом к #{cc} с помощью xhtml, это также работает (например, тип ввода = «скрытое» значение = «#{cc ne null}»/> будет отображаться в тип ввода = «скрытое» значение = «true»/>).
Это ошибка или я что-то упускаю? Я использую wildfly 8 с mojarra-2.2.6.
Заранее спасибо
Комментарии:
1. что
createValueExpression()
? Собственный метод, выведенный метод ..?2. что-то вроде этого: FacesContext context = FacesContext.getCurrentInstance(); context.getApplication().getExpressionFactory() .createValueExpression(context.getELContext(), exp, WHATEVER.class ).Получить значение(context.getELContext());