JSF 2 композиты и привязка для валидации
У меня проблема с композитом JSF, который проверяет внутренние поля ввода. Следующий фрагмент кода работает, если включен только один композит.
<div id="#{cc.clientId}" >
<h:panelGroup styleClass="#{not firstname.valid ? 'fmError' : ''}">
<div class="col220">
<h:outputLabel for="firstname" value="Vorname(n):" />
</div>
<div class="col220">
<h:inputText id="firstname" styleClass="fmTxt "
value="#{cc.attrs.person.firstname}" binding="#{firstname}">
<f:validateRequired />
</h:inputText>
</div>
</h:panelGroup>
</div>
Как вы можете видеть, я использую cc.clientId, чтобы обернуть композит и иметь уникальные идентификаторы для компонентов внутри композита. Таким образом, можно включить более одной композиции на одной странице.
Проблемы начинаются с проверки и необходимости связать компонент inputText. Мне нужно это, чтобы запросить результат проверки в PanelGroup для выделения не только inputField, но и метки.
Этот код отлично работает при использовании только одного композита на странице. При использовании второго, inputField 'firstname' больше не отображается. Я предполагаю, что это связано с привязкой и ее жестко закодированным '# {firstname}'.
Теперь вопрос: как я могу создать уникальный идентификатор для атрибута привязки?
Я благодарен за любую подсказку. Спасибо!