我创建了验证消息(ValidationMessages.properties)文件以使i18n在我的项目中成为可能。
看起来是这样的:
pwtNumber.error=PWT Number error.. 我在faces-config.xml中定义了它:
<message-bundle>com.mycompany.web.i18n.ValidationMessages</message-bundle>在我的代码中,我是这样使用它的:
@Null(message = "{pwtNumber.error}")
public String getPwtNummer() {
return pwtNummer;
}但问题是,我从属性文件中得到的不是错误消息,而是密钥。这是我得到的错误消息:
myForm:pwtNummer: {pwtNumber.error}我该怎么解决它呢?
发布于 2012-09-05 20:45:16
您混淆了JSF内置验证和JSR303 bean验证。
<message-bundle>用于覆盖/指定JSF内置验证消息,而不是JSR303 bean验证消息。尽管您为JSR303 bean验证捆绑包文件ValidationMessages.properties使用了正确的文件名,但是JSR303 bean验证还要求将捆绑包文件放在类路径的根目录下(因此,在缺省包中,不带 any package)。修复之后,不要忘记删除不正确的<message-bundle>条目。
另请参阅:
https://stackoverflow.com/questions/12280800
复制相似问题