Проверка и присоединение к сообщениям Spring Framework - PullRequest
1 голос
/ 06 декабря 2011

Я пытался внедрить службу проверки в мой проект.Мой код валидатора выглядит так:

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");
......

1 Ответ

0 голосов
/ 07 декабря 2011

Полагаю, вы смешали два понятия:

  • как сообщения об ошибках хранятся в объекте ошибок (errors.reject("error.zip"+"error.countryname"))
  • как они печатаются There is an Error at Zip-Code, There is an Error at Countryname

Если вы хотите изменить способ их печати, то вам нужно изменить тег form:errors, но НЕ то, как вы добавляете сообщения в объект ошибки! (Напротив: если вы хотите изменить сами сообщения, то изменение вывода будет неправильным способом.)

Так что удалите <br/> из вывода и замените его на ,, вам просто нужно указать атрибут delimiter тега form:errors:

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

@ см. Spring Reference Приложение G.4 Тег ошибок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...