Как настроить сообщение об ошибке проверки JSF
Как я могу настроить сообщение проверки, которое появляется при сбое проверки?
Вот код, который у меня есть:
<h:form>
<p><h:inputText
id="userNo"
title="Type a number from 0 to 10:">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
<h:commandButton id="submit" value="Submit"
action="response"/>
</p>
<h:message showSummary="true" showDetail="false"
id="errors1"
for="userNo"/>
</h:form>
В настоящее время сообщение выглядит так:
j_idt10:userNo: Validation Error: Specified attribute is not between the expected values of 3 and 6.
Что не особенно удобно для пользователя.
3 ответа
Простейшим способом было бы установить validatorMessage="my custom message"
атрибут в <h:inputText>
тег.
Для более продвинутого способа прочитайте эту статью. Настройте сообщение об ошибке проверки в JSF 2.0.
А здесь полная ссылка на все доступные сообщения, которые вы можете переопределить в JSF 2.0.x
В дополнение к ответу Даниила вы всегда можете использовать label
атрибут для ваших входных компонентов, чтобы удалить идентификатор клиента (j_idt10:userNo:
) из сообщения об ошибке.
Например, с
<h:inputText id="userNo" title="Type a number from 0 to 10:"
label="User number">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
будет производить:
Номер пользователя: Ошибка проверки: указанный атрибут не находится между ожидаемыми значениями от 3 до 6.
Атрибут метки также может быть выражением el для динамического изменения этой части сообщения об ошибке.
Вы можете использовать свойство validatorMessage для ввода текста. Используйте свойство requiredMessage для обязательного сообщения, оно отличается от сообщения валидатора.
<h:input text required ="true" validatorMessage="Enter user friendly message">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>