JSF2 i18n bean 验证消息

Posted

技术标签:

【中文标题】JSF2 i18n bean 验证消息【英文标题】:JSF2 i18n bean validation messages 【发布时间】:2011-05-11 03:59:11 【问题描述】:

如何返回 i18n 本地化 bean 验证消息?

例如,在:

@Size(min = 1, message = "pleaseProvideADescription")
private String description;

即使我在 faces-config.xml 中设置了属性文件,并且我包含了 pleaseProvideADescription=Please provide a...

我还在:

pleaseProvideADescription

作为标签中的验证消息

谢谢

【问题讨论】:

【参考方案1】:

Bean 验证 (JSR-303) 与 JSF2 (JSR-314) 完全无关。它是标准 Java EE API 的另一个部分。

验证消息必须放在类路径根目录中名为 ValidationMessages.properties 的文件中(您可以使用 ValidationMessages_xx_XX.properties 文件对其进行国际化)。

将您的自定义消息放在那里。你不需要在 JSF 的faces-config.xml 中配置任何东西。

【讨论】:

“Bean 验证 (JSR-303) 与 JSF2 (JSR-314) 完全无关。它是标准 Java EE API 的另一部分。”但是在这种情况下将使用哪个语言环境 - 我假设服务器语言环境?这不是我们需要的…… 我按照您的提示将消息添加到属性文件中。没有成功。 you can see here

以上是关于JSF2 i18n bean 验证消息的主要内容,如果未能解决你的问题,请参考以下文章

托管 bean 问题中的用户输入验证(JSF 2.0)

在 JSF 中使用 bean 验证进行本地化

在使用 JSR-303 验证表单时使用 I18n 消息

java 在spring引导中通过语言环境进行i18n国际化的messages.properties文件中的验证消息

Bean 验证不适用于 mojarra 2.2.4

带有自己的验证器消息的 JSF 2.0 validateRegex