如何从自定义验证器中的密钥中获取消息?如Struts 2 - reusing Custom Expression Validator中所述,您可以将默认消息显示为:
public void validate(Object o) throws ValidationException {
//Do some logic
addActionError(getDefaultMessage());
}
答案 0 :(得分:2)
您的自定义验证程序应该扩展ValidatorSupport
类,它有一个方便的方法getMessage(Object object)
来获取使用key
参数设置的i18n消息。
因此,在validate
方法内,而不是调用getDefaultMessage
(简单返回默认消息)调用getMessage
,它将使用额外的key
评估messageParams
参数。< / p>
public void validate(Object o) throws ValidationException {
//Do some logic
addActionError(getMessage(o));
}