【问题标题】:Validation and Message Joining Spring Framework验证和消息加入 Spring 框架
【发布时间】:2011-12-06 11:44:17
【问题描述】:

我尝试为我的项目实施验证服务。我的验证器代码如下所示:

public class UserValidator implements Validator{

    public boolean supports(Class<?> clazz) {
        return Ort.class.isAssignableFrom(clazz);
    }

    public void validate(Object target, Errors errors) {
        Ort ort = (Ort) target;
        if((ort.getcountryname().length() == 0) && (ort.getzip().length() == 0))
        {
        errors.reject("error.zip");
        errors.reject("error.countryname");
        }

    }

}

我有一条消息 xml,其中包含以下条目: 代码:

......
error.zip=There is an Error at Zip-Code
error.countryname=There is an Error at Countryname

一切正常。我在我的jsp上做一个这样的输出: 代码:

<form:errors path="*" cssClass="error message" element="div"/>

如果出现错误,我的 HTML 代码如下所示: 代码:

There is an Error at Zip-Code<br>There is an Error at Countryname

我的问题: 我怎样才能加入消息,以便我在我的 jsp 上得到一个输出,看起来像这样: 代码:

There is an Error at Zip-Code, There is an Error at Countryname

我可以在我的验证课上做一些这样的想法吗?

代码:

......
        errors.reject("error.zip"+"error.countryname");
......

【问题讨论】:

  • 对不起,我必须这么说,但你应该看看 JSR 303 Bean Validation Support for Spring。
  • 您好,感谢您的回复:) 但是在所有文档中,我都找不到如何组合消息字符串的答案。所以我的问题是我可以创建一种包含我喜欢的所有消息字符串的对象吗?这样我就可以做出这样的想法: TheObjectIdontKnow = name = new TheObjectIdontKnow(); name = ("A normal String"+"message.from.messagefile"+","+"SecondMessage.from.messagefile"; 希望你能帮到我;)

标签: java spring messages


【解决方案1】:

我猜你混淆了两个概念:

  • 错误消息如何存储在错误对象中 (errors.reject("error.zip"+"error.countryname"))
  • 它们的打印方式There is an Error at Zip-Code, There is an Error at Countryname

如果你想改变它们的打印方式,那么你必须改变form:errors 标签,而不是你将消息添加到错误对象的方式! (相反:如果您想更改消息本身,那么更改输出将是错误的方式。)

因此,从输出中删除&lt;br/&gt; 并将其替换为, 您只需要指定form:errors 标签的delimiter 属性:

<form:errors path="*" cssClass="error message" element="div" delimiter",&nbsp;"/>

@见Spring Reference Appendix G.4 The errors tag

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-09
    • 1970-01-01
    • 2020-09-18
    • 2012-10-30
    • 1970-01-01
    • 2014-05-31
    • 1970-01-01
    相关资源
    最近更新 更多