Struts 2 如何从自定义验证器中获取 i18n 消息 [英] Struts 2 how to get i18n messages from within a custom validator

查看:26
本文介绍了Struts 2 如何从自定义验证器中获取 i18n 消息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从自定义验证器中的密钥获取消息?!如 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆