Как показать входной идентификатор или метку в сообщениях проверки?

Я делаю веб-приложение, используя Spring 3.1.0.RELEASE, JSF 2.x, JPA 2 с Hibernate Provider. Приложение работает на Tomcat 6.X.

Веб-приложение может отображаться на разных языках: en, es, fr.

Я использую проверку bean-компонентов в своих сущностях. Hibernate Validator — провайдер, версия 4.2.0.Final.

<h:form id="SiteCreationForm">
            <pou:messages />
            <pou:fieldset legend="#{messages['siteCreation.detail']}">
                <h:panelGrid columns="2">
                    <h:outputLabel for="siteVisualId" value="#{messages['siteCreation.url']} :" />

поу это первично

В моей сущности у меня есть это:

@Size(max = 20)
    @NotBlank
    @Basic(optional = false)
    @Column(name = "visual_id", length = 20, unique = true)
    private String visualId;

Я не знаю, почему, но сообщение об ошибке отображает только «не может быть пустым», оно не отображает идентификатор ввода или метку. Почему, как я могу это исправить?

То же самое происходит с обязательным атрибутом на входе.

Спасибо.


person La Chamelle    schedule 25.04.2012    source источник


Ответы (1)


В пакет сообщений проверки JSF, который вы указали (или должны указать) в <message-bundle> из faces-config.xml, добавьте следующую запись:

javax.faces.validator.BeanValidator.MESSAGE = {1}: {0}

{0} — это сообщение валидатора компонента, а {1} — метка компонента JSF.

person BalusC    schedule 25.04.2012