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

Tive que inserir uma annotation para o cód. funcionar por quê?

Olá amigos, realizei os mesmos procedimentos que o professor nos vídeos, porém o meu código apresentou os seguintes erros:

No Browser:

This application has no explicit mapping for /error, so you are seeing this as a fallback.
Tue Oct 27 17:17:29 BRT 2020
There was an unexpected error (type=Internal Server Error, status=500).

No Console:

com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: java.util.ArrayList[0]->br.com.alura.mvc.mudi.model.Pedido["user"]->br.com.alura.mvc.mudi.model.User$HibernateProxy$h4UmiXPz["hibernateLazyInitializer"])

O erro eu consegui resolver adicionando a seguinte Annotation em cima de cada Entity:

@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})

Minhas classes com entidades ficaram da seguinte forma:

@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@Entity
@Table(name = "users")
public class User {}
______________________________________________________
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@Entity
public class Pedido {}
______________________________________________________
package br.com.alura.mvc.mudi.model;
public enum StatusPedido {
    AGUARDANDO, APROVADO, ENTREGUE;
}

Gostaria de saber qual foi o motivo que tive para adicionar essa annotation para o código funcionar adequadamente.

abs.

1 resposta
solução!
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})

você precisa ignorar os relacionamento lazy do hibernate porque eles vem inicialmente vazios e o jackson vai tentar fazer o parse dele pra json/xml

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