Как я могу выбрать, где появится сообщение об ошибке от валидатора `required`?
Как я могу выбрать, где сообщение об ошибке от валидатора required
появляются? Сообщение об ошибке теперь отображается внизу моей страницы, но я хочу, чтобы оно было рядом с моим полем ввода.
<p>Firstname: <h:inputText value="#{userBean.firstname}" required="true"/></p>
<p>Lastname: <h:inputText value="#{userBean.lastname}" required="true"/></p>
1 ответ
Решение
Те, что появляются внизу, на самом деле являются необработанными сообщениями, которые появляются только тогда, когда javax.faces.PROJECT_STAGE
был установлен на Development
в web.xml
,
Тебе необходимо <h:message>
объявить место, где должно быть показано сообщение. Кроме того, вам также нужно <h:outputLabel>
представлять метки (что имеет смысловые и практические преимущества).
Вот полный набор:
<p>
<h:outputLabel for="firstname" value="Firstname:"/>
<h:inputText id="firstname" label="Firstname" value="#{userBean.firstname}" required="true"/>
<h:message for="firstname" />
</p>
<p>
<h:outputLabel for="lastname" value="Lastname:"/>
<h:inputText id="lastname" label="Lastname" value="#{userBean.lastname}" required="true"/>
<h:message for="lastname" />
</p>