messageSource не заменяет все аргументы в шаблоне

У меня есть код:

messageSource.getMessage("some.key",new Object[]{30,31},Constants.LOCALE)

и ключ внутри файла свойств:

some.key=Csv header length ({0}) doesn't correspond the mapping file size {1} .

но результат странный

Csv header length (30) doesn't correspond the mapping file size {1} .

Первая переменная была успешно заменена, но вторая - нет.

Почему второй аргумент не был разрешен?

1 ответ

Решение

Проблема в том, что в сообщении есть одиночная кавычка, которую вы не избежали.

См. https://www.mscharhag.com/java/resource-bundle-single-quote-escaping для примера вашей проблемы.

Другие вопросы по тегам