当前位置: 首页 > 知识库问答 >
问题:

重写Hibernate验证器消息

长孙阳成
2023-03-14

我试图覆盖默认的Hibernate验证器消息,但没有成功。我已经为几个文本使用了一个资源包,它工作得很好。问题在于验证器的消息。

详细内容:

我创建了以下文件:ValidationMessages\u de.properties并将其放置在\src\main\resources\translations\ValidationMessages\u de.properties下。该文件具有以下资源:org。冬眠验证器。限制。不是空白。message=值是必需的。组织。冬眠验证器。限制。没空。message=值是必需的。

我的faces-config.xml有以下内容:

<application>
    <locale-config>
        <default-locale>de</default-locale>
        <supported-locale>de</supported-locale>
    </locale-config>
    <resource-bundle>
        <base-name>translations.messages</base-name>
        <var>msg</var>
    </resource-bundle>
    <resource-bundle>
        <base-name>translations.ValidationMessages</base-name>
        <var>validMsgs</var>
    </resource-bundle>
    <message-bundle>
    translations.ValidationMessages
    </message-bundle>
</application>

对于验证,我使用以下注释:@Not空白@NotBlank

我还尝试了以下几点:

  1. 移动ValidationMessages_de.properties到另一个目录
  2. 创建一个ValidationMessages.properties作为ValidationMessages_de_DE。

以上这些都不能解决问题。验证时,Hibernate为我提供了德语区域设置的默认消息:darf nicht leer sein

我错过了什么?

共有1个答案

宗政元青
2023-03-14

虽然我已经配置了我的faces-config.xml在翻译中寻找一些原因,它无法从资源中阅读。

一旦我移动了src\main\resources\下的文件,一切都开始工作了。

 类似资料:
  • 我有一个测试类,在那里我测试一个用@NotNull注释的域模型 在这个资源包中,支持相当多的语言(英语、德语、法语……) 例 @NOTNULL违反德语消息 当我在测试时,我如何强制Hibernate验证器为来自资源包的冲突消息选择特定的语言?现在,我收到英文违规信息。然而,在另一个机器德国。

  • 我无法使用Spring MVC 4.2.5版本来处理hibernate validation 5.1.0.Final。 我的WebConfig: 我有一个ExceptionHanlder,它获取验证消息,并将其作为JSON推回: 在controller中,我使用@org.springframework.validation.annotation.validated。 PS2.我确信我的messag

  • 根据有关消息插值步骤的文档,消息参数(包含在“”中的参数)在计算消息表达式(包含在“”中的参数)之前被解析。因此,我得出结论,允许写这样的消息: 并且期望其键为或的消息文本为结果,其中和被假定为有效的消息键,并且在正确引导的资源束中已经定义了消息键。 为了澄清问题,我使用TestNG编写了一个测试用例,并在hibernate-validator-5.0.1.final和hibernate-vali

  • 这个问题已经被问了很多次了,即使是在经历了所有的解决方案之后,我也无法让hibernate validator工作。 控制器类:- servlet-上下文:- 依赖关系:- 验证类:- 我错过了什么?

  • 我需要应用一个双值验证,这需要与圆周率匹配。我正在考虑使用@pattern(regex=“3.14159265359”)。这是使用Hibernate验证约束应用这样一个约束的最佳方式吗?谢谢

  • 晚上好,我正在尝试在下面的场景中使用Hibernate验证器: