Я бы создал проверку входной информации, указанной в: http://www.primefaces.org/showcase/ui/message/messages.xhtml
Я создаю dataTable с большим количеством обязательных полей (inputText с атрибутом required="true") и сообщением p: в раздел datatable. Проблема в том, что когда я нажимаю кнопку для сохранения данных: я не вижу предупреждающего сообщения на своей странице, но начинаю выполнение связанного компонента. Почему?
Мой код в .xhtml таков:
<h:form>
<p:messages id="messages" showDetail="true" autoUpdate="true" closable="true" />
<p:dataTable var="myAtt"
value="#{myBean.attributes}"
rowIndexVar="myAttIndex">
<h:inputHidden value="#{myAtt.value}" rendered="#{myAtt.description == 'XXX'}" />
<p:column rendered="#{myAtt.description == 'XXX'}">
<h:outputText value="*" rendered="#{myAtt.required}" />
</p:column>
<p:column rendered="#{ myAtt.description == 'YYY'">
<p:fragment rendered="#{myAtt.description == 'ZZZ'">
<p:fragment rendered="#{myAtt.value == 'value1'}">
<p:inputText size="#{myAtt.maxLength}"
value="#{myAtt.value}"
rendered="#{myAtt.const == 't1'}"
required="true"
id="idText">
<p:ajax process="@this" event="change" update="@form"/>
</p:inputText>
<p:message for="idText"/>
</p:fragment>
</p:fragment>
</p:column>
</p:dataTable>
<br />
<p:commandButton value="Create" action="#{myBean.commit()}" process="@this" update=":MYPAGE"/>
Спасибо.