Problemas com DELETE_ORPHAN no Hibernate

Olá galera, estou com um problema no Hibernate, se puderem me ajudar eu agradeço…
Tenho 2 classes, uma classe Produto e uma classe Documento, onde minha classe Produto tem um relacionamento One-to-Many com a classe Documento.

@Entity
public class Produto {
        @OneToMany
	@Cascade(value={CascadeType.ALL, CascadeType.DELETE_ORPHAN})
	private List<Documento> documentos;

       //Getters e Setters
}

public class Documento {
       //Atributos
       //Getters e Setters
}

Quando vou editar o cadastro de produtos busco apenas informações que desejo alterar (Exemplo: nome, descricao, etc), ou seja, minha lista de documentos eu não recupero, quando mando o objeto pra UI ele torna-se detached. Eu altero as informações necessárias e quando o objeto detached chega na camada de persistencia eu abro a sessão do Hibernate novamente e chamo o método session.merge(produto). Quando vou commitar essa transação, o Hibernate retorna uma exception: A collection with cascade=“all-delete-orphan” was no longer referenced by the owning entity instance.

Alguém tem alguma idéia de como resolver isso. Meu objeto quando dou merge continua com a lista de documentos nula, ele não é exibida como uma PersistenceBag, como eu pensava que deveria ser.

Alguém tem ideia do que eu possa fazer. Creio que seja algo simples, mas está me dando dores de cabeça.
Obrigado a todos.

Cara, já passei por isto quanto fazia o mapeamento de uma classe q tinha uma coleção de componentes (@Embedded) por composição. Desta forma, quando retirasse um filho da coleção, este filho teria q ser removido do banco.

Mapeando o cascade para all-delete-orphan era lançada uma exceção igual a esta q vc recebeu. A solução foi mapear apenas com cascade all e obtive o resultado q precisava.

Esse seu relacionamento é unidirecional? Apenas o Produto enxerga os Documentos ou o relacionamento é Bi-direcional? Se for bi-direcional, mostre como está o mapeamento da outra ponta.

Qto mais informação tivermos, melhor será para chegarmos a uma solução.

Abraço.

Meu relacionamento é unidirecional

Alguém tem alguma idéia? Preciso resolver isso urgente.

a