Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Erro Login No AuthenticationProvider found for org.springframework.security.authentication.UsernamePasswordAuthenticationToken

Boa noite,

Estou com um erro quando tento fazer o Login.

meu UsuarioDao:

@Repository
public class UsuarioDao implements UserDetailsService {

    @PersistenceContext
    private EntityManager manager;

    public Usuario AddUsuario(Usuario usuario){
        manager.persist(usuario);

        return usuario;
    }

    @Override
    public UserDetails loadUserByUsername(String email) throws UsernameNotFoundException {
        List<Usuario> usuarios = manager.createQuery("select u from Usuario where u.email = :email", Usuario.class)
                .setParameter("email", email).getResultList();
                System.out.println("teste");
        if (usuarios.isEmpty()) {
            throw new UsernameNotFoundException("O usuário " + email + " não foi encontrado");
        }

        return usuarios.get(0);
    }

metodo de cadastro de Usuario:

@RequestMapping(value = "/addUsuario", method = RequestMethod.POST)
    public ModelAndView adicionaUsuario(Usuario usuario, Endereco endereco){

        BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
        String senhaEncode = encoder.encode(usuario.getSenha());

        usuario.setSenha(senhaEncode);
        usuario.setRoles("ROLE_USUARIO");

        Usuario usuarioCadastrado = UsuaDao.AddUsuario(usuario);

        endereco.setUsuario(usuarioCadastrado);

        endDao.addEndereco(endereco);


        ModelAndView modelAndView = new ModelAndView("/");
        return modelAndView;

    }

SecurityConfiguration:


@EnableWebMvcSecurity
public class SecurityConfiguration extends WebSecurityConfigurerAdapter{



    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests()
        .antMatchers("/").permitAll()
        .antMatchers("/addUsuario").permitAll()
        .antMatchers("/buscaEndereco").permitAll()
        .antMatchers("/login").permitAll()
        .anyRequest().authenticated().
        and().formLogin();


    }

    @Override
    public void configure(WebSecurity web) throws Exception {
        web.ignoring().antMatchers("/resources/**");
    }

}

E estou usando o formulário padrão do Spring, mas parece que o método para verificar o Usuário não esta sendo chamado.

obrigado.

1 resposta
solução

Conseguir resolver, obrigado.