Spring服务在自定义ConstraintValidator中为null



我有一个spring-boot项目,一个使用javax验证API的bean。

我正试图在我的bean自定义验证器中注入一个服务。但是服务对象为null
我找不到使用Spring ConstraintValidator的完整示例,也不理解一些人在其他主题中为集成测试所做的配置。

我想有一个像这样的构造函数注入的验证器(我不想使用@Autowired nore javax@Inject(:

@Component
public class CustomValidator implements ConstraintValidator<ValidCustomValidator, CustomObj> {
private ErreurService erreurService;
public CustomValidator(ErreurService erreurService) {
this.erreurService=erreurService;
}
@Override
public boolean isValid(CustomObj customObj, ConstraintValidatorContext context) {
erreurService.getMessages("");
return false;
}
}

**错误服务**

@Service("ErreurService")
@Transactional
public class ErreurServiceImpl implements ErreurService {//...}

通过这种方法,我得到了一个异常HV000064: Unable to instantiate ConstraintValidator

我尝试了一些@Autowired,但总是得到一个NPE。你能帮我吗?

您是否在ErreurService实现类上放置了@Service注释?它在指定ComponentScan的包中吗?