[ Resolvido ] Exclusão de relacionamento unidirecional com JPA

Pessoal estou com dúvida em relação a exclusão de uma entity. Ela possui relacionamento (fk) com outras tabelas.

As classes estão anotadas assim:

    @Entity
    @TableGenerator(name = "Tabela_IDs", pkColumnName = "tabela", pkColumnValue = "idpedido", valueColumnName = "id_atual", allocationSize = 1)
    @NamedQueries({
        @NamedQuery(name = "Pedido.consultarTodos", query = "SELECT c FROM Pedido c ORDER BY c.dataped DESC")
    })
    public class Pedido implements Serializable {
         ///demais atributos classe foram desconsiderados
        @OneToMany(cascade = CascadeType.REMOVE)
        @JoinColumn(name = "pedido")
        @ForeignKey(name = "fk_pedido_item")
        private List<ItemPedido> itens;

        //get e set omitidos
}

Trata-se de um relacionamento unidirecional (na entity ItemPedido não tenho nenhuma anotação). Minha intenção é sendo um PEDIDO composto de vários itens, ao ser excluído um PEDIDO todos os seus itens fossem automaticamente excluídos junto com ele.

O problema é que em outras entity’s ficaram assim:

@Entity
@TableGenerator(name = "Tabela_IDs", pkColumnName = "tabela", pkColumnValue = "idcaixa", valueColumnName = "id_atual", allocationSize = 1)
@NamedQueries({
    @NamedQuery(name = "Caixa.consultarTodos", query = "SELECT c FROM CaixaDespesa c ORDER BY c.pedido.dataped")
})
public class CaixaDespesa implements Serializable {
    @Id
    @GeneratedValue(strategy = GenerationType.TABLE, generator = "Tabela_IDs")
    private int idcaixa;    
        
    @Column(columnDefinition = "VARCHAR(255) character set WIN1252 collate WIN_PTBR")
    private String historico; // pago ou em aberto
    
    @OneToOne
    @JoinColumn(name = "pedido")
    @ForeignKey(name = "fk_cx_desp_pedido")
    private Pedido pedido;
    
}

Portanto, na entity CAIXADESPESA tenho uma chave estrageira que aponta para PEDIDO.

Então ao tentar exclur um pedido, a JPA está reclamando desse último relacionamento, vejam:

ERROR: GDS Exception. 335544466. violation of FOREIGN KEY constraint "FK_CX_DESP_PEDIDO" on table "CAIXADESPESA"
Foreign key references are present for the record
Problematic key value is ("IDPEDIDO" = 16)

Gostaria de manter os relacionamento sendo unidirecionais.

Objetivo: sempre que gravo um pedido (na mesma transação lógico), gero uma movimentação no caixa. Esta movimentação tem um pedido que será tratado posteriormente com uma stored procedure (estou utilizando o firebird 2.5).

Ao que me parece não será possível fazer essa exclusão da forma, gostaria que os colegas dessem alguma opinião a respeito.

Desde já agradeço aos colegas pelas sugestões e auxílio!