2012-01-30 2 views
1

У меня есть приложение Spring MVC, работающее в Tomcat, и все работает хорошо.Как вставить динамический текст в сообщения об ошибках Spring MVC?

Одна вещь, которую мне нужно сделать, это настроить сообщение об ошибке с текстом, который у меня есть во время выполнения. Я не особенно знаком с наборами ресурсов Spring или Java. Я попытался это в моем .properties файле:

exception=Something bad, m'kay? {0} 

Но что получает дословно повторено в <form:errors> выходе.

Два вопроса:

(1) Как я поставляю текст выполнения в Errors объекта в моем контроллере и (2) Как форматировать текст свойства, чтобы включить этот текст во время выполнения.

ответ

0

Вы можете просто использовать rejectValue(String field, String errorCode, Object[] errorArgs, String defaultMessage) api в Errors, чтобы включить текст во время выполнения.

Если применить этот API для сообщения об ошибке, указанном в вашем вопросе errors.rejectValue(<your_command_field>, exception, new Object[]{<your_runtime_string>}, "Something bad, m'kay? fine")

+0

Я до сих пор не ясно, как мой текст выполнения слит в консервированном текст ресурсов. – Andrew

+0

Этот API загружает текст вашего сообщения в память и заменяет эти держатели (например {0}, {1} ...) вашими динамическими строками, которые вы передавали как массив объектов в том же порядке, и возвращает эту строку. i.e {0} будет заменен объектами [0] и {1} с объектом {1} ... – Pokuri

+0

Это бит, который не работает. Сообщение, которое я получаю от , - «Что-то плохое, m'kay {0}». «{0}» не заменяется моим текстом. – Andrew

Смежные вопросы