Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

NullPointerException ao tentar exibir os topicos no banco h2

Ao tentar acessar os topicos cadastrados no banco h2 via browser, estou tomando uma NullPointerException:

Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback.

Mon Jan 20 14:56:21 GFT 2020 There was an unexpected error (type=Internal Server Error, status=500). No message available java.lang.NullPointerException at br.com.diego.forum.controller.TopicosController.getTopicos(TopicosController.java:21)

Segue o codigo da classe TopicosController

package br.com.diego.forum.controller;

import java.util.List;

import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;

import br.com.diego.forum.controller.dto.TopicoDto; import br.com.diego.forum.model.Topico; import br.com.diego.forum.repository.TopicoRepository;

@RestController public class TopicosController {

private TopicoRepository topicoRepository;

@RequestMapping("/topicos")
public List<TopicoDto> getTopicos(String nomeCurso){

    if(nomeCurso == null) {
        List<Topico> topicos = topicoRepository.findAll(); //linha 21
        return TopicoDto.converter(topicos);
    } else {
        List<Topico> topicos = topicoRepository.findByCursoNome(nomeCurso);
        return TopicoDto.converter(topicos);
      }    
}

}

Segue o data.sql

INSERT INTO USUARIO(nome, email, senha) VALUES('Aluno', 'aluno@email.com', '123456');

INSERT INTO CURSO(nome, categoria) VALUES('Spring Boot', 'Programação'); INSERT INTO CURSO(nome, categoria) VALUES('HTML 5', 'Front-end');

INSERT INTO TOPICO(titulo, mensagem, data_criacao, status, autor_id, curso_id) VALUES('Dúvida', 'Erro ao criar projeto', '2019-05-05 18:00:00', 'NAO_RESPONDIDO', 1, 1); INSERT INTO TOPICO(titulo, mensagem, data_criacao, status, autor_id, curso_id) VALUES('Dúvida 2', 'Projeto não compila', '2019-05-05 19:00:00', 'NAO_RESPONDIDO', 1, 1); INSERT INTO TOPICO(titulo, mensagem, data_criacao, status, autor_id, curso_id) VALUES('Dúvida 3', 'Tag HTML', '2019-05-05 20:00:00', 'NAO_RESPONDIDO', 1, 2);

OBS: as queries no console estão devolvendo os valores corretamente.

1 resposta
solução!

Já encontrei o erro. Esqueci o @Autowired na declaração do TopicoRepository.