Я пытаюсь реализовать пользовательские сообщения на другом языке в моем приложении, созданном с помощью Spring Boot 2. До сих пор я реализовал его для полей сущностей, используя ключи, установленные в messages_br.properties
.Теперь я пытаюсь сделать то же самое с сообщениями об исключениях, которые выдают в контроллеры, но я не понимаю, как это сделать.Примеры показывают слишком много вещей, которые я считаю не тем, что мне нужно.
Чтобы настроить файл, это в моих Application.java
:
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource bundleMessageSource = new ReloadableResourceBundleMessageSource();
bundleMessageSource.setBasename("classpath:messages_br");
bundleMessageSource.setDefaultEncoding("UTF-8");
return bundleMessageSource;
}
@Bean
public LocalValidatorFactoryBean getValidator() {
LocalValidatorFactoryBean bean = new LocalValidatorFactoryBean();
bean.setValidationMessageSource(messageSource());
return bean;
}
В аннотациях над каждым полем яможно указать что-то вроде этого:
@NotEmpty(message = "{beneficiary.name.notEmpty}")
private String name;
Но тот же формат в сгенерированном исключении печатает только:
throw new InsufficientBalanceException("${user.balance.insufficientBalance}");
Я почти уверен, что при изучении того, как реализовать исключения, я виделпохожий пример, но теперь я больше не могу его найти и не помню, как это делается.