• 记一次服务启动时bean注入时 Requested bean is currently in creation的问题


    发现测试服务器一台muc启动失败,另一台是好的,本地也没问题,报错信息如下:

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mucAccountLoginController': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerEndpointsConfiguration': Unsatisfied dependency expressed through field 'configurers'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'pcAuthorizationServerConfig': Unsatisfied dependency expressed through field 'authenticationManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'webSecurityConfig': Unsatisfied dependency expressed through field 'formAuthenticationConfig'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'formAuthenticationConfig' defined in URL [jar:file:/home/rockysaas/muc/rockysaas-provider-muc.jar!/BOOT-INF/lib/rockysaas-security-core-1.0.jar!/com/rockysaas/security/core/authentication/FormAuthenticationConfig.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pcAuthenticationSuccessHandler': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'defaultAuthorizationServerTokenServices': Requested bean is currently in creation: Is there an unresolvable circular reference?

    原因是原先有

    public class PcAuthenticationSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {
    
        @Resource
        private ObjectMapper objectMapper;
    
        @Resource
        private ClientDetailsService clientDetailsService;
    
        @Autowired
        private PasswordEncoder passwordEncoder;
    
        @Resource
        private MucAccountService mucAccountService;
    
        @Resource
        private MucPlatformMapper mucPlatformMapper;
    
        @Resource
        private AuthorizationServerTokenServices authorizationServerTokenServices;

    后来mucAccountLoginController加了段代码

    
    

    @RestController

    public class MucAccountLoginController extends BaseController {
    
        @Resource
        private MucLoginService mucLoginService;
        @Resource
        private MucAccountTokenService mucUserTokenService;
        @Resource
        private ClientDetailsService clientDetailsService;
        @Autowired
        private PasswordEncoder passwordEncoder;
    
        @Resource
        private MdcApplicationFeignApi mdcApplicationFeignApi;
    
        @Resource
        private AuthorizationServerTokenServices authorizationServerTokenServices;

    原先只有一个AuthorizationServerTokenServices需要注入,现在变成两个,如果同时发生注入的时候就会报错。在其中一个要注入的类上上加上@Lazy就好了

    @RestController
    @RequestMapping(value = "", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @Api(tags = "Web - 账号登录相关", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    public class MucAccountLoginController extends BaseController {
    
        @Resource
        private MucLoginService mucLoginService;
        @Resource
        private MucAccountTokenService mucUserTokenService;
        @Resource
        private ClientDetailsService clientDetailsService;
        @Autowired
        private PasswordEncoder passwordEncoder;
    
        @Resource
        private MdcApplicationFeignApi mdcApplicationFeignApi;
    
        @Resource
        @Lazy
        private AuthorizationServerTokenServices authorizationServerTokenServices;
    喜欢艺术的码农
  • 相关阅读:
    微信卡券领用中的问题
    abp的开发20180425
    typescript 接口的新认识
    Jquery构建Form表单Post提交数据的简单方法
    EF使用时异常:对一个或多个实体的验证失败。有关详细信息
    VS快捷键简单记录
    比较和排序 IComparable And IComparer
    wpf全局异常
    MailBee的简单使用
    json数据的获取(网络摘抄)
  • 原文地址:https://www.cnblogs.com/zjhgx/p/12158698.html
Copyright © 2020-2023  润新知