No código abaixo, a classe Conta está em um estado Detached, entretando o registro de Cliente que referencia Conta é salvo no banco por meio de um método persist. Por que isso ocorre? Não deveria gerar um erro já que conta é Detached?
public class TestaContaCliente {
public static void main(String[] args) {
Cliente cliente = new Cliente();
cliente.setNome("Leonardo");
cliente.setEndereco("Rua Fulano, 123");
cliente.setProfissao("Professor");
//Conta está em um estado Detached
Conta conta = new Conta();
conta.setId(2);
cliente.setConta(conta);
EntityManager em = new JPAUtil().getEntityManager();
em.getTransaction().begin();
em.persist(cliente);
em.getTransaction().commit();
em.close();
}
}