【发布时间】:2016-09-24 14:19:15
【问题描述】:
我不知道我是否需要以及更多关于此的代码/详细信息,但如果需要,我准备提供更多信息:)
我得到:Could not autowire. No beans of 'Validator' type found。这里有类似的问题,但没有关于Validator。我试图通过构造函数自动装配它,但它仍然是一样的。我使用 Intellij Ultime 版本。 spring-boot-starter-xxx-xxx 的最新版本,目前是 1.4.1.RELEASE。
@Configuration
public class RestConfig extends RepositoryRestConfigurerAdapter {
@Autowired
private Validator validator;
@Override
public void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener validatingListener) {
validatingListener.addValidator("beforeCreate", validator);
validatingListener.addValidator("beforeSave", validator);
}
}
编辑:
我将我的代码更改为这个并且它有效。谢谢解答。。
@Bean
public Validator validator() {
return new LocalValidatorFactoryBean();
}
@Override
public void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener validatingListener) {
validatingListener.addValidator("beforeCreate", validator());
validatingListener.addValidator("beforeSave", validator());
}
顺便问一下,我只是想知道投反对票的人是否可以解释他/她为什么这样做?
【问题讨论】:
-
请提供您的配置文件
-
嗨@JekinKalariya。很抱歉问,但你所说的配置是什么意思?我不使用 xml 配置,只使用 java 注释。
-
好的,然后给你的验证器类和组件扫描的地方还有你的 beans.xml
-
@JekinKalariya 我在应用程序类中使用
@SpringBootApplication注释。我的验证器类就是您在我的问题中看到的所有内容。我认为这个问题与代码无关。它看起来像一个错误。我认为 Intellij 社区版不会出现这个问题。 -
@Bean public Validator validator() { return new LocalValidatorFactoryBean(); }这正是我所需要的 :) 谢谢!
标签: java spring bean-validation spring-validator