Ваша пользовательская аннотация @UniqueUsername
создает и вызывает ваш ValidatorUniqueUsername
, но не внедряет его, даже если он помечен @Component
.
И из-за этого ни один из ресурсов не будет автоматически подключен в вашемValidatorUniqueUsername
будет введено.
Вы можете попытаться добавить это к своему @Configuration
:
@Bean
public Validator validatorFactory() {
return new LocalValidatorFactoryBean();
}
Подробнее здесь (выдержка ниже):
Весной, если мы зарегистрируем LocalValidatorFactoryBean для начальной загрузки javax.validation.ValidatorFactory, тогда пользовательские классы ConstraintValidator загружаются как Spring Bean.Это означает, что мы можем получить выгоду от внедрения зависимостей Spring в классах валидаторов.