1
resposta

[Bug] AuthenticationManager

Ao chamar a classe do spring AuthenticationManager no controller, e adicionar a anotação @Autowired o spring não reconhece e aparece esse erro:

"Could not autowire. No beans of 'AuthenticationManager' type found".

1 resposta

Olá, Vinícius!

O erro que você está recebendo indica que o Spring não está conseguindo encontrar um bean do tipo AuthenticationManager para injetar.

Uma possível solução para este problema é você criar explicitamente esse bean em uma classe de configuração. Aqui está um exemplo de como você pode fazer isso:

@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Bean
    @Override
    public AuthenticationManager authenticationManagerBean() throws Exception {
        return super.authenticationManagerBean();
    }

    // outras configurações de segurança
}

Neste exemplo, estendemos a classe WebSecurityConfigurerAdapter e sobrescrevemos o método authenticationManagerBean(). O método @Bean acima do método faz com que o Spring reconheça que este método está fornecendo um bean que pode ser injetado em outros lugares do seu aplicativo.

Depois de fazer isso, você deve ser capaz de usar @Autowired para injetar AuthenticationManager em seu controller.

Espero ter ajudado e bons estudos!