自定义ConstraintValidator中的Spring服务为空

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

我正在尝试在自定义验证器中为bean注入服务。但是服务对象为空。
我找不到使用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;
}
}

** ErreurService **

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

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

我尝试使用@Autowired进行操作,但是总是得到NPE。 你能帮我吗?

iCMS 回答:自定义ConstraintValidator中的Spring服务为空

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

本文链接:https://www.f2er.com/1585539.html

大家都在问