Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

erro 500 UserDetailsService returned null, which is an interface contract violation. e erro 500 Usuário inexistente ou senha inválida

Galera do futuro, se você está enfrentando problemas de erro 500 com a mensagem 'UserDetailsService returned null, which is an interface contract violation', geralmente isso ocorre quando o método loadUserByUsername do seu UserDetailsService está retornando null. Isso é uma violação do contrato da interface UserDetailsService, que exige que esse método nunca retorne null.

Se o usuário não for encontrado, o método loadUserByUsername deve lançar uma exceção UsernameNotFoundException. Tente adicionar o seguinte código:

@Service public class AutenticacaoService implements UserDetailsService {

@Autowired
private UsuarioRepository repository;

@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
    UserDetails user = repository.findByLogin(username);
    if (user == null) {
        throw new UsernameNotFoundException("User not found");
    }
    return user;
}

}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

e no caso do erro: { "timestamp": "2023-12-17T03:01:43.774+00:00", "status": 500, "error": "Internal Server Error", "message": "Usuário inexistente ou senha inválida", "path": "/login" }

mesmo voce inserindo os usuarios no banco de dados, bom não esqueçam de dar commit rsrs

solução!

Oi!

Valeu pela dica Kennedy!

Bons estudos!