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 для примера вашей проблемы.