Spring Boot忽略配置Bean,还是构建顺序错误?

时间:2018-12-20 01:04:47

标签: java spring spring-boot jhipster

我有一个具有相当标准的配置和安全性配置的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构建排序问题,但我不了解我的内容。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

所以UserJWTController是您的类,对吧?

为什么不自动接线?

@Autowired
@Qualifier("authenticationManagerBean")
public AuthenticationManager authenticationManager;