Ajuda com consulta

2 respostas
fabiodurgante

na parte de cadastrar fiz assim cadastra perfeito no mysql

EntityManagerFactory emf = Persistence.createEntityManagerFactory("JPA_cadastra_ja_contendoTabelaPU");
        EntityManager em = emf.createEntityManager();

        ClienteModelo cli = new ClienteModelo(); 
        cli.setNome("teste");
        
          em.getTransaction().begin();
          em.persist(cli);
         em.getTransaction().commit();

assim funciona, nao consigo consultar fiz o seguinte

EntityManagerFactory emf = Persistence.createEntityManagerFactory("JPA_cadastra_ja_contendoTabelaPU");
        EntityManager em = emf.createEntityManager();

    ClienteModelo cli = em.find(ClienteModelo.class, 1);    
        System.out.print(cli.getNome());
consulta o cliente pelo codigo 1

e o erro q apresenta
Exception in thread “main” java.lang.IllegalArgumentException: You have provided an instance of an incorrect PK class for this find operation. Class expected : class java.lang.Long, Class received : class java.lang.Integer.

eu tenho somente 1 tabela clientemodelo, o que esta errado ???

2 Respostas

panthovillas

vc ta passando o codigo como inteiro e ele espera um long.
experimente no find ao inves de 1 colocar 1L

fabiodurgante

isso mesmo cara valeuuu , funciono beleza…

Criado 3 de março de 2013
Ultima resposta 3 de mar. de 2013
Respostas 2
Participantes 2