Java 我能';";凌驾@带有.properties的NotEmpty消息

Java 我能';";凌驾@带有.properties的NotEmpty消息,java,spring,jsp,Java,Spring,Jsp,我正在学习Spring3,我试图使用类org.hibernate.validator.constraints.NotEmpty验证表单 例如,我可以覆盖从.properties文件检索消息的@Size消息(javax.validation.constraints.Size)和@Email消息(org.hibernate.validator.constraints.Email) 但是我无法覆盖org.hibernate.validator.constraints.NotEmpty默认消息。我总是收

我正在学习Spring3,我试图使用类
org.hibernate.validator.constraints.NotEmpty
验证表单

例如,我可以覆盖从.properties文件检索消息的
@Size
消息(
javax.validation.constraints.Size
)和
@Email
消息(
org.hibernate.validator.constraints.Email

但是我无法覆盖
org.hibernate.validator.constraints.NotEmpty
默认消息。我总是收到默认消息“可能不是空的”

这是我的XXXX-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

 <mvc:annotation-driven/>     

      <mvc:interceptors>
        <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
             <property name="paramName" value="lang" />
        </bean>
    </mvc:interceptors> 

    <context:component-scan base-package="com.springgestioneerrori.controller" />     

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
        <property name="prefix" value="/WEB-INF/views/" />
        <property name="suffix" value=".jsp" />
    </bean>    

    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="classpath:messages" />
        <property name="defaultEncoding" value="UTF-8"/>
    </bean>

    <bean id="localeChangeInterceptor"
        class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
        <property name="paramName" value="lang" />
    </bean>

    <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver" >
        <property name="defaultLocale" value="en"/>
    </bean>

    <bean id="handlerMapping"
        class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
        <property name="interceptors">
            <ref bean="localeChangeInterceptor" />
        </property>
    </bean>

</beans>
这是我的表格

.......
<form:form action="formSent" method="post" commandName="utente">
<form:errors path="*" cssClass="errorblock" element="div" /><br/><br/>
<spring:message code="form.label.utente.nome"/><form:input path="nome"/><form:errors path="nome" cssClass="error" /><br>  
<input type="submit">
</form:form>
 ......
这是我的财产档案

    NotEmpy.utente.nome = il campo nome non può essere vuoto //Im NOT able to get this message
    Size.utente.nome = Il nome deve contenere tra 2 e 30 lettere //Im able to get this message

您必须创建一个文件
ValidationMessages.properties
,并将其放置在应用程序的类路径中。Hibernate验证程序使用
org.Hibernate.validator.constraints.NotEmpty.message
键翻译消息

org.hibernate.validator.constraints.NotEmpty.message=il campo nome non può essere vuoto
有关更多信息,请查看此处:

更新

要自定义单个消息,请使用以下内容:

@NotEmpty( message = "{NotEmpy.utente.nome}" )
@Size(min=3,max=20, message = "{Size.utente.nome}")
private String nome;
试试这个-

@NotEmpty(message=“{NotEmpy.utete.nome}”)
私有字符串名称

谢谢你的帮助。我犯了一个愚蠢的错误。在属性文件中,我编写了NotEmpy而不是NotEmpty。很抱歉耽误了您的时间:)

谢谢您的帮助。我犯了一个愚蠢的错误。在属性文件中,我编写了NotEmpy而不是NotEmpty。抱歉耽误了您的时间:)
org.hibernate.validator.constraints.NotEmpty.message=il campo nome non può essere vuoto
@NotEmpty( message = "{NotEmpy.utente.nome}" )
@Size(min=3,max=20, message = "{Size.utente.nome}")
private String nome;