2
respostas

Inicialização do Spring Boot, problema no JPA e Bean

Fala galera belesma pura? Eu estou com um problema e não estou conseguindo resolver sozinho. Já rodei a internet inteira e nenhuma solução funcionou até agora.

Eu estou com um problema na inicialização do SpringBoot, problema no JPA e Bean pra bootar. Dá o seguinte erro:

"Failed to initialize JPA EntityManagerFactory: component: resipay.api.domain.address.Address property not found: id_tb_address


Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: component: resipay.api.domain.address.Address property not found: id_tb_address"

Onde errei? O que fiz errado ou deixei de fazer, alguém pode me dar uma luz? Abraços!

2 respostas

Oi Vagner,

Parece ser um problema de mapeamento do atributo id_tb_address da sua entidade Address.

Pode ser alguma anotação JPA faltando, não sei dizer ao certo. Se conseguir compartilhar seu codigo aqui com a gente vai de ser grande valia pra analisar melhor

Olá, Vagner! Tudo bem?

Pelo log que você colocou aí, parece que a JPA está tentando encontrar uma propriedade chamada "id_tb_address" na classe "Address", mas não está conseguindo. Isso pode acontecer se você não declarou corretamente essa propriedade na sua classe "Address" ou se o mapeamento entre a classe e o banco de dados não está correto.

Vamos supor que sua classe "Address" seja algo assim:

@Entity
public class Address {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    // outras propriedades...
}

Nesse caso, a JPA está procurando por "id_tb_address", mas na verdade, o nome da propriedade é apenas "id". Para resolver isso, você pode renomear a propriedade para "id_tb_address" ou ajustar o mapeamento para que a JPA saiba que "id" corresponde a "id_tb_address" no banco de dados.

Para ajustar o mapeamento, pode fazer algo assim:

@Entity
public class Address {
    @Id
    @Column(name = "id_tb_address")
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    // outras propriedades...
}

Nesse último exemplo, a anotação @Column está dizendo à JPA que a propriedade "id" na classe "Address" corresponde à coluna "id_tb_address" no banco de dados.

Essa é só uma suposição com base no que voc~e mandou aqui... Caso queira enviar seu código aqui, posso tentar testar e ver se encontro algo também.

Espero ter ajudado e bons estudos! :)