Hibernate removendo da lista mas não persiste

Boa tarde.
Estou com um problema (dúvida) que não estou conseguindo achar solução.

Tenho uma tela de pedidos, onde são inseridos itens. Organizados em 3 classes, sendo:

Pedido (classe criada pelo hibernate)
-> Item Pedido (classe criada pelo hibernate)
-> Produto (view criada no banco)

Eu consigo salvar pedido com itens normalmente, altero o pai tranquilo. Porém não consigo excluir itens, na realidade eu até excluo, ele mostra no front que foi excluído, porém não persiste no banco de dados.

Estou usando o merge(entidade). Segue minhas classes:

PEDIDO:

    @OneToMany(mappedBy = "pedido", cascade = CascadeType.ALL, fetch = FetchType.EAGER, orphanRemoval = true)
	private List<ItemPedido> itens = new ArrayList<ItemPedido>();

ITEM PEDIDO

    @ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "produto_fk",nullable = false)
	private VIEW_PRODUTOS produto;

Quando dou o merge, recebo o erro:

 Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-02292: restrição de integridade (BANCO.FKNOSWMQL1N8YVP43QOPRWKXBJV) violada - registro filho localizado.

Percebi que o hibernate tenta excluir todos os itens:

Hibernate: 
    delete 
    from
        TABELA_ITEM 
    where
        id=?

Como posso fazer para ele excluir somente o item que o usuário removeu?

Método remover:

public void removeLinha(int linha) {
		if (linha > 0) {
			this.OBJETO.getItens().remove(linha);
			qtdeItem--;
		}
		recalcularValores(OBJETO);
	}

Nesse processo, ele remove, mostra pro usuario que removeu. Porém quando salvo, dá erro de persistência.

Alguém pode me dar uma luz?

Esse erro indica que você está tentando excluir um item de uma tabela A que está relacionado a um ou mais itens da tabela B de forma que B referencia um item de A.

No caso, Tenho um pedido para varios Itens.
Esses itens tem relacionamento com umas informações de produtos (view).

@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "produto_fk",nullable = false)
	private VIEW_PRODUTOS produto;

Tem alguma sugestão que posso testar? Ou que estou fazendo errado?

Pq ele está dando violação de chave, tentando excluir algo que não pode.

Cara, eu entendo que o item_produto é uma tabela de relacionamento que surge a partir da relação de muitos para muitos entre pedido e produto (cada pedido pode ter nenhum ou vários produtos e cada produto pode estar em nenhum ou vários pedidos).
Assim sendo, é item pedido que recebe as FKs de ambas as tabelas. Logo, excluir dela não deveria causar este tipo de problema.

Ps:

Por que essa classe tem esse nome desse jeito?

Bom dia.
Na vdd não se chama assim, só mascarei pra colocar no fórum, mas ela é uma view do banco de dados.

Vou fazer mais testes.

Tem que postar o script dessa fk (BANCO.FKNOSWMQL1N8YVP43QOPRWKXBJV)