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

查看:207
本文介绍了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,它将使用附加的messageParams评估key参数.

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天全站免登陆