Я создал новый пользовательский компонент, реализующий пользовательский валидатор.Вот как я это называю:
<p:inputText value="#{MyBean.value}" >
<f:attribute name="label" value="#{ResourceBean.labels['label']}"/>
<my:validator error="#{ResourceBean.message['the.error.message']}"
expression="#{ResourceBean.regExp['alphanumeric']}"/>
</p:inputText>
А вот реализация проверки
String val = value == null ? "" : value.toString();
if (!val.matches(getExpression())) {
throw new ValidatorException(new
FacesMessage(FacesMessage.SEVERITY_ERROR,getErrorSummary(),null));
и сообщение об ошибке в файле свойств:
the.error.message={0}\: is Invalid.
проблема в том, что {0}
не заменяется меткой в сообщении об ошибке, поэтому я получаю сообщение об ошибке:
{0}: is Invalid.
Есть идеи, как это исправить?