Fiquei em dúvida do motivo pelo qual isso aqui deu certo:
Conta conta = new Conta();
conta.setId(4);
Movimentacao movimentacao = new Movimentacao();
movimentacao.setData(Calendar.getInstance());
movimentacao.setDescricao("Conta de Manutencão do Carro");
movimentacao.setTipoMovimentacao(TipoMovimentacao.SAIDA);
movimentacao.setValor(new BigDecimal("565.36"));
movimentacao.setConta(conta);
EntityManager manager = new JPAUtil().getEntityManager();
manager.getTransaction().begin();
manager.persist(movimentacao);
manager.getTransaction().commit();
manager.close();
Não entendi porque o código funcionou, sendo que eu usei o PERSIST na conta, e ela estando detached, e não managed. Por exemplo, se eu quiser remover uma conta, preciso usar o método FIND do manager instanciado, agora para criar uma query na tabela movimentação, que se relaciona com conta (e essa precisa persistir também), não tem necessidade?