Quantcast
Channel: GUJ - Tópicos com a tag hibernate
Viewing all articles
Browse latest Browse all 759

EntityExistsException (Hibernate) - Zerando um ArrayList e recarregando antes de persistir

$
0
0

@aboult escreveu:

Boa tarde.

Estou tendo um problema (EntityExistsException) ao tentar zerar um ArrayList, recarregá-lo com novos dados e gravar ao final do processo completo do form.

A situação seria a seguinte, eu tenho uma coleção de PedidoItem em minha entidade Pedido:

@OneToMany(cascade = CascadeType.ALL, mappedBy = "pedido", orphanRemoval = true)
private List<PedidoItem> itens;

Essa coleção já vem carregada, mas o usuário pode trocar a Nota de Origem vinculada e recarregar os itens, então estava tentando zerar o ArrayList e preenchê-lo com as novas informações.

Mas neste momento, não posso efetivar a remoção dos itens, pois o usuário pode vincular uma nova Nota e simplesmente cancelar a alteração do Pedido.

pedido.setItens(new ArrayList<>());

nfeFiltro.getProdutos().stream()
    .forEach(nfeProduto -> {
        PedidoItem pedidoItem = new PedidoItem();
        pedidoItem.setPedido(pedido);

        PedidoItemId pedidoItemId = new PedidoItemId();
        pedidoItemId.setPedidoLinha(nfeProduto.getId().getNfeNumeroDoItem());
        pedidoItem.setId(pedidoItemId);

Como eu poderia resolver esta situação? Eu já manipulei o EqualsAndHashCode do PedidoItem e fiz outras alterações que não resolveram.

A única forma que consegui resolver, foi fazendo o que não queria. Usando o em.remove() para cada item da lista antes de recarregá-la.

Obrigado desde já.

Mensagens: 2

Participantes: 2

Ler tópico completo


Viewing all articles
Browse latest Browse all 759


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>