2012-04-08 80 views
1

我使用spring 3.0.2开发基于Web的简单应用程序,如twitter。我的服务器端验证在JSR验证API中很好,但是我无法在验证失败时找到任何方法来在JSR验证API中对消息进行国际化。验证失败时的消息的JSR验证API中的本地化支持

我在我的模型类中使用了以下注释Spitter.java代表应用程序中的用户。

公共类Spitter实现Serializable {

private Long id; 


@Size(min=8, max=15, message="some msg..") 
@Pattern(regexp="^[a-zA-Z0-9]+$", message="some msg..") 
private String username; 

@Size(min=8, max=15, message="some msg..") 
private String password; 

@Size(min=3, max=15, message="some msg..") 
private String name; 

@Pattern(regexp="^$",message="some msg..") 
private String email; 

@NotNull(message="some msg..") 
@NumberFormat(style= NumberFormat.Style.NUMBER) 
@Min(value=14, message="some msg..") 
@Max(value=99, message="some msg..") 
private Integer age; 

//getter setter not shown 

} 

在校验失败,我已经检查JSR验证API对本地化的支持,但无法找到相同。

有什么办法可以实现国际化。

在此先感谢...

回答

5

你可以把ValidationMessages.properties文件在类路径与approrpriately定制的消息。您非彼覆盖当前的一组消息,说的如:

javax.validation.constraints.NotNull.message=may not be null 

,或者如果你想使用自己的自定义消息:

@NotNull(message="{custom.message}") 

的条目应该是存在于ValidationMessages。属性文件。

该信息存在于4.3.1.1节。 JSR 303的规格