首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Spring依赖注入在ConstraintValidator中不起作用

Spring依赖注入在ConstraintValidator中不起作用
EN

Stack Overflow用户
提问于 2018-08-23 02:15:19
回答 1查看 100关注 0票数 1

我正在尝试使用@Autowired将我的服务应用到自定义ContextValidator注释中。我在SOF的老问题上寻找一些帮助,但我很不幸,所以我创建了一个新的。我的目标是有效bean的属性,上面有@MyId注释。

下面是我的代码:

代码语言:javascript
复制
@Documented
@Constraint(validatedBy = { MyIdValidator.class })
@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
@Retention(RUNTIME)
public @interface MyIdSpring {

    String message() default "Invalid ID!";

    Class<?>[] groups() default { };

    Class<? extends Payload>[] payload() default { };
}

Valdiator类:

代码语言:javascript
复制
@Configurable(autowire = Autowire.BY_TYPE, dependencyCheck = true)
public class MyIdValidator implements ConstraintValidator<MyId, TestID> {

    @Autowired
    private ITestService testService;

    @Override
    public void initialize(MyId constraintAnnotation) {
    }

    @Override
    public boolean isValid(TestID value, ConstraintValidatorContext context) {

        System.out.println(testService);

        return false;
    }
}

配置:

代码语言:javascript
复制
@Configuration
public class ValidatorConfig {

    @Bean
    public LocalValidatorFactoryBean validator() {
        LocalValidatorFactoryBean bean = new LocalValidatorFactoryBean();
        return bean;
    }
}

服务:

代码语言:javascript
复制
@Service
public class TestService implements ITestService { .. }

ITestService始终为空。你能帮我修一下吗?我使用的是spring boot 1.5。

EN

回答 1

Stack Overflow用户

发布于 2018-08-23 03:58:09

使用注解告诉Spring你的实现类。

代码语言:javascript
复制
@Autowired
@Qualifier("testService")
private ITestService testService;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51972861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档