1

验证按预期工作,但消息仅以英语很好地显示。我用自己的日语留言。

问题是我收到了日语的乱码验证消息。我将validation-api-1.0.0.GA.jar 与hibernate-validator-4.2.0.Final.jar 一起使用。我有 ValidationMessages.properties 和 ValidationMessages_ja.properties。文件为utf8:例如:firstName=姓をご记入ください。出来:å½ãé¸æãã¦ããããã

我在 bean 上面使用了一个要验证的属性:@Size(min = 1, message = "{myErrorMsg}") private String myAttribute;

在我的 spring.xml 中:

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

和:

<bean id="localeResolver"
    class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver">
    <!-- <property name="defaultLocale" value="en_us" /> -->
</bean>

有什么我想念的吗?

谢谢, 罗德

4

1 回答 1

0

我会说编码可能在构建时丢失了。您使用的构建工具是否知道您的文件编码?例如,对于 Maven,您需要以下属性:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
于 2012-04-27T15:37:38.417 回答