gpt4 book ai didi

jsf - 自定义 bean 验证消息?

转载 作者:行者123 更新时间:2023-12-04 18:27:58 26 4
gpt4 key购买 nike

关于 JSF 中使用的 bean 验证的两个愚蠢问题:

  • 如何删除前缀 form1:userName:从输出消息?
    <h:message for="userName" /> 

    得到:
    form1:userName: Please enter a valid username (5-20 characters)

    我还想翻译名字form1:userNameUser Name ,实现这样的翻译很容易,但我找不到在哪里构建消息。
  • 我有一个自定义验证器,比如 @CreditCard ,其默认消息为{foo.bar.BadCreditNumber}
    @interface CreditCard {
    String message() default "{foo.bar.BadCreditNumber}";
    }

    并且消息在 foo/bar/ValidationMessages.properties 中定义在类路径中。现在我怎样才能在每个页面中加载这个属性文件?
  • 最佳答案

    关于 1:错误消息的格式取决于属性 javax.faces.validator.BeanValidator.MESSAGE 必须在应用程序的资源包中指定,如下所示:

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

    占位符 {0}指的是 Bean Validation 运行时创建的错误消息, {1}指组件标签。因此,如果您不想在消息中包含标签,只需确保占位符 {1}不包含在该属性值中。

    更多信息请访问 JSF 2 spec. 第 3.5.6.3 节。

    关于2:正如BalusC所说,只需输入 ValidationMessages.properties到你的类路径的根目录。更多信息也可以在 Hibernate Validator reference guide 中找到。 .

    关于jsf - 自定义 bean 验证消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7700922/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com