我有一个具有相当标准的配置和安全性配置的JHipster 5.3.4项目,但是当尝试运行该项目时,出现以下错误,表示缺少一个bean。
在 root / config / SecurityConfiguration.java 中,我具有以下类头和内部Bean
@Configuration
@Import(SecurityProblemSupport.class)
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true)
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
...
@Override
@Bean
public AuthenticationManager authenticationManagerBean() throws Exception {
return super.authenticationManagerBean();
}
...
}
在 root / web / rest / UserJWTController.java 中,我有以下内容
@RestController
@RequestMapping("/api")
public class UserJWTController {
private final TokenProvider tokenProvider;
private final AuthenticationManager authenticationManager;
public UserJWTController(TokenProvider tokenProvider,
AuthenticationManager authenticationManager) {
this.tokenProvider = tokenProvider;
this.authenticationManager = authenticationManager;
}
...
但是当我尝试运行项目时,我得到: au.com.suncorp.pp.web.rest.UserJWTController中的构造函数的参数1需要一个类型为“ org.springframework.security.authentication.AuthenticationManager”的bean
我假设存在Bean构建排序问题,但我不了解我的内容。有人可以帮忙吗?
答案 0 :(得分:0)
所以UserJWTController是您的类,对吧?
为什么不自动接线?
@Autowired
@Qualifier("authenticationManagerBean")
public AuthenticationManager authenticationManager;