问题描述
如何从自定义验证器中的密钥获取消息?!如 Struts 2 - 重用自定义表达式验证器 中所述,您可以获得默认消息为:
How is it possible to get the message from key in the custom validator ?! As mentioned in Struts 2 - reusing Custom Expression Validator you can get default message as :
public void validate(Object o) throws ValidationException {
//Do some logic
addActionError(getDefaultMessage());
}
推荐答案
你的自定义验证器应该扩展 ValidatorSupport
类,它有一个方便的方法 getMessage(Object object)
获取使用 key
参数设置的 i18n 消息.
Your custom validator should extend ValidatorSupport
class, which has a convenient method getMessage(Object object)
to get i18n messages set with key
parameter.
所以在 validate
方法中而不是调用 getDefaultMessage
(它简单地返回默认消息)调用 getMessage
它将评估 key
参数和附加的 messageParams
.
So inside validate
method instead of calling getDefaultMessage
(which simple returns default message) call getMessage
which will evaluate key
parameter with additional messageParams
.
public void validate(Object o) throws ValidationException {
//Do some logic
addActionError(getMessage(o));
}
这篇关于Struts 2 如何从自定义验证器中获取 i18n 消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
更多推荐
[db:关键词]
发布评论