Spring 3.0 MVC
Прежде всего, я не нашел никакой документации по messages.properties @ springsource Все, что я нашел о переопределении сообщений об ошибках, было на разных форумах . Если у кого-то есть ссылка на то, где задокументированы messages.properties, это было бы здорово. Может быть, messages.properties пришло не из Spring, а из спецификации java?
Я пробовал следовать советам по JSR-303 Проверка типа перед связыванием Моя цель - заменить некоторые сообщения об ошибках несоответствия типов моими собственными удобными для пользователя сообщениями об ошибках
Моя ситуация следующая:
Модель
public class Test {
private int numberbomb;
public int getNumberbomb() {
return numberbomb;
}
public void setNumberbomb(int numberbomb) {
this.numberbomb = numberbomb;
}
}
myservlet.xml
jsp
numberbomb
классы \ сообщения.properties
typeMismatch=bad value you bad bad person
test.numberbomb=you are driving me crazy with these bad inputs
Вывод из формы
Не удалось преобразовать значение свойства типа java.lang.String в требуемый тип int для свойства numberbomb; вложенное исключение - org.springframework.core.convert.ConversionFailedException: невозможно преобразовать значение «три» из типа java.lang.String в тип int; вложенное исключение - java.lang.NumberFormatException: для входной строки: "three"
BindingResult.toString () в моем контроллере
Ошибка поля в объекте 'test' в поле 'numberbomb': значение отклонено [три]; коды [typeMismatch.test.numberbomb, typeMismatch.numberbomb, typeMismatch.int, typeMismatch]; аргументы [org.springframework.context.support.DefaultMessageSourceResolvable: коды [test.numberbomb, numberbomb]; аргументы []; сообщение по умолчанию [numberbomb]]; сообщение по умолчанию [Не удалось преобразовать значение свойства типа 'java.lang.String' в требуемый тип 'int' для свойства 'numberbomb'; вложенное исключение - org.springframework.core.convert.ConversionFailedException: невозможно преобразовать значение «три» из типа 'java.lang.String' в тип 'int'; вложенное исключение - java.lang.NumberFormatException: для входной строки: "three"]
Отображает ли сообщения об ошибках с
неправильным способом отображения пользовательских сообщений об ошибках? Нужно ли мне что-то добавить в конфигурационные файлы Spring, чтобы он смотрел на messages.properties? Spring, похоже, игнорирует мой файл messages.properties (который находится в папке WEB-INF \ classes)
Спасибо за любые идеи!