#java #spring-boot
#java #spring-boot
Вопрос:
У меня есть проект Spring boot Maven, и я пытаюсь поймать исключение ввода-вывода, и я получаю эту ошибку:
org.springframework.context.NoSuchMessageException: No message found under code 'inventory.error' for locale 'de_DE'.
Мой метод:
@PostMapping("/inventory")
public String inventory(@ModelAttribute("Inventory") Inventory inventory, BindingResult bindingResult) {
try {
testBuildMdb();
} catch (Exception e) {
bindingResult.rejectValue("error", null, e.getMessage());
}
if (bindingResult.hasErrors()) {
return "inventory";
}
return "success";
}
Я думаю, это потому, что мой язык Windows — немецкий. Как я могу изменить язык моего исключения на английский?
Комментарии:
1. Вы этого не делаете и не должны. У вас должно быть значение по умолчанию
messages.properties
, содержащее переводы по умолчанию (возможно, на английском языке). Он будет использовать это как запасной вариант .2. Должен ли быть пробел в Inventoryinventory?
Ответ №1:
Это связано с тем, что файлы свойств не могут быть найдены на основе структуры файла свойств, приложения.yml должен быть похож на spring.messages.basename: yourProjectDirectory/messages /сообщения