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

No converter found for return value of type: class br.com.alura.forum.controller.dto.DetalhesDoTopicoDto

Ao tentar acessar pelo postman o metodo detalhar do TopicosController recebo o erro:

No converter found for return value of type: class br.com.alura.forum.controller.dto.DetalhesDoTopicoDto

@GetMapping("/{id}")
public DetalhesDoTopicoDto detalhar(@PathVariable Long id) {
    Topico topico = topicoRepository.getOne(id);
    return new DetalhesDoTopicoDto(topico);
}
1 resposta
solução!

Solução:

Faltava colocar os Getters na classe DetalhesDoTopicoDto

private Long id;
private String titulo;
private String mensagem;
private LocalDateTime dataCriacao;
private String nomeAutor;
private StatusTopico status;
private List<RespostaDto> respostas;

public DetalhesDoTopicoDto(Topico topico) {
        this.id = topico.getId();
        this.titulo = topico.getTitulo();
        this.mensagem = topico.getMensagem();
        this.dataCriacao = topico.getDataCriacao();
        this.nomeAutor = topico.getAutor().getNome();
        this.status = topico.getStatus();
        this.respostas = new ArrayList<>();
        this.respostas.addAll(topico.getRespostas().stream().map(RespostaDto::new).collect(Collectors.toList()));
    }

public Long getId() {
    return id;
}

public String getTitulo() {
    return titulo;
}

public String getMensagem() {
    return mensagem;
}

public LocalDateTime getDataCriacao() {
    return dataCriacao;
}

public String getNomeAutor() {
    return nomeAutor;
}

public StatusTopico getStatus() {
    return status;
}

public List<RespostaDto> getRespostas() {
    return respostas;
}

}

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software