Как создать собственные сообщения для валидатора?
Я положил в свой класс
@ Размер (min = 1, groups = {Ato.Validar.class, Ato.Salvar.class}) Имя списка;
, но я не хочу помещать сообщение = "" в вечную аннотацию, поэтому я создаю один messages_pt_BR.properties в моем ресурсе / locale
Создайте класс:
@Configuration
public class LocaleConfiguration {
@Bean
public LocaleResolver localeResolver() {
SessionLocaleResolver localeResolver = new SessionLocaleResolver();
Locale.setDefault(new Locale("pt","BR"));
localeResolver.setDefaultLocale(new Locale("pt","BR"));
return localeResolver;
}
@Bean
public ReloadableResourceBundleMessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("classpath:locale/messages");
messageSource.setCacheSeconds(3600); //refresh cache once per hour
return messageSource;
}
}
Я пытаюсь использовать свои messages_pt_BR.properties:
Size=my custom message
Size.myClass.name=my custom message
Size.myClass.Name=my custom message
И в свой контроллер я помещаю:
public void myMethod(@RequestBody @Validated({Ato.Salvar.class}) MyObjectClass myObject)
Но если я выложу и MyObjectClassбез свойства name или пустого массива sprinboot возвращает сообщение по умолчанию (в моем случае на моем языке pt_Br), но по умолчанию.