2
respostas

Java e JPA : Aula 7 - Conhecendo o cache de primeiro nível. BeanCreationException

Ao tentar repetir os passos da aula recebo BeanCreationException.

o stack trace: https://gist.github.com/hudds/bbacfe1c538afa8699d38336391d6ea6

o pom.xml: https://gist.github.com/hudds/7ce509caa3e8e0b632dfddd9fd6573f6

o código:

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;

import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import br.com.caelum.JpaConfigurator;
import br.com.caelum.model.Produto;

public class TesteCache {
    public static void main(String[] args) {

        ApplicationContext ctx = new AnnotationConfigApplicationContext(JpaConfigurator.class);

        EntityManagerFactory emf = (EntityManagerFactory) ctx.getBean(EntityManagerFactory.class);

        EntityManager em = emf.createEntityManager();
        EntityManager em2 = emf.createEntityManager(); // criando o segundo EntityManager

        Produto produto = em.find(Produto.class, 1);
        System.out.println("Nome: " + produto.getNome());

        Produto outroProduto = em2.find(Produto.class, 1); // buscando a mesma entidade com o segundo EntityManager
        System.out.println("Nome: " + outroProduto.getNome());

    }
}

Estou usando java 13 e Eclipse EE 2019-12

2 respostas

Resolvi o problema mudando a versão do Java EE para 8. No pom.xml eu alterei a seguinte dependência:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-web-api</artifactId>
    <version>7.0</version>
    <scope>provided</scope>
</dependency>

para:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-web-api</artifactId>
    <version>8.0</version>
    <scope>provided</scope>
</dependency>

Fala Hudson, tudo bem?

É isso mesmo, problema sanado então, correto?

Abraço!