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

Na Classse TesteJPARelacionamento Exception lançada quando executa Run As: JavaApplication

Não faz a criação da nova tabela e apresenta e excessão:

Hibernate: 
    insert 
    into
        Conta
        (agencia, banco, numero, titular) 
    values
        (?, ?, ?, ?)
Exception in thread "main" java.lang.IllegalArgumentException: Unknown entity: br.com.caelum.financas.modelo.Movimentacao
    at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:705)
    at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:688)
    at br.com.caelum.financas.teste.TesteJPARelacionamento.main(TesteJPARelacionamento.java:35)

O Código estava correto, contudo copiei do projeto no capitulo seguinte e o erro persistiu. Até essa fase estava tudo funcionando perfeitamente.

package br.com.caelum.financas.teste;

import java.math.BigDecimal;
import java.util.Calendar;

import javax.persistence.EntityManager;

import br.com.caelum.financas.modelo.Conta;
import br.com.caelum.financas.modelo.Movimentacao;
import br.com.caelum.financas.modelo.TipoMovimentacao;
import br.com.caelum.financas.util.JPAUtil;

public class TesteJPARelacionamento {

     public static void main(String[] args) {

            Conta conta = new Conta();
            conta.setAgencia("111");
            conta.setBanco("Itau");
            conta.setNumero("54321");
            conta.setTitular("Leonardo");

            Movimentacao movimentacao = new Movimentacao();
            movimentacao.setData(Calendar.getInstance());
            movimentacao.setDescricao("Churrascaria");
            movimentacao.setTipoMovimentacao(TipoMovimentacao.SAIDA);
            movimentacao.setValor(new BigDecimal("200.0"));

            movimentacao.setConta(conta);

            EntityManager manager = new JPAUtil().getEntityManager();
            manager.getTransaction().begin();

            manager.persist(conta);
            manager.persist(movimentacao);

            manager.getTransaction().commit();
            manager.close();

        }

}
1 resposta
solução!

O erro estava na classe Movimentacao copiei do projeto capitulo 5 e rodou.

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