Привет, я создал составной компонент, который создает динамическую форму. Я передаю 3 аргумента компонентам, поддерживающим компонент. 2 из них - объекты.Обновление аргумента составных компонентов JSF
<p:outputPanel id="dynaForm" >
<p:outputPanel rendered="#{formTest.dynamicForm!=null}" >
Form in parent: #{formTest.dynamicForm.id}<br/>
<cc:dynamicFormComponent
formObject="#{formTest.form}"
formDataObject="#{formTest.recordObject}"
mode="1"
/>
</p:outputPanel>
</p:outputPanel>
Это хорошо работает, когда используется статически, но когда я пытаюсь динамически изменять atribute formObject
с помощью selectOneMenu и обновить dynaForm
панель, первый раз она строит форму, но когда я пытаюсь изменить формировать атрибут не обновляется, его помнит первый выбор. Это происходит только с атрибутами объекта, если я использую строку, она меняется нормально. Я выводю идентификатор формы на панели и в составном компоненте, и кажется, что составной компонент не хочет воспринимать обновленное значение.
Вот основа коды компоненты:
<cc:interface componentType="dynamicFormComponentGenerator" >
</cc:interface>
<cc:implementation>
Form in component: #{cc.attrs.formObject.id}
<cc:implementation>