jsr 303如何强制它使用我的resourcebundle?

时间:2011-11-18 09:05:36

标签: java validation

我有使用

的验证器类
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basename" value="/WEB-INF/messages" />
</bean>

除了执行更复杂验证的验证器之外,我还使用JSR303

@NotNull(message="null value is not allowed")
 protected String postCode;

我希望JSR使用相同的文件源消息。

  @NotNull(message=<SOMEHOW GO TO MY messages_en_US.properties AND EXTRACT SOMETHING LIKE : user.poscode.null>)

谢谢!

2 个答案:

答案 0 :(得分:3)

默认情况下,JSR303验证器会查找名为ValidationMessages.properties的文件,该文件与您使用的实现捆绑在一起。 如果您想添加自己的约束验证消息,则必须提供自己的ValidationMessages.properties,然后将消息添加到其中。

您可以查看Message interpolation,Hibernate验证器文档。

但是我刚刚描述了它的Java EE标准行为我不知道Spring是否以相同的方式运行

答案 1 :(得分:0)

我在另一个关于simillar话题的另一个更集中的问题的帮助下解决了这个问题。有兴趣的人:javax.validation how to target different locale?

请注意,需要两套文件,包括resourcebundle和属性。