Pessoal,
Estou com um problema que está me tirando o sono há alguns dias já. Não consigo resolver a seguinte exceção do toplink:
Exception [TOPLINK-7242] (Oracle TopLink Essentials - 2006.8 (Build 060830)): oracle.toplink.essentials.exceptions.ValidationException
Exception Description: An attempt was made to traverse a relationship using indirection that had a null Session. This often occurs when an entity with an uninstantiated LAZY relationship is serialized and that lazy relationship is traversed after serialization. To avoid this issue, instantiate the LAZY relationship prior to serialization.
Trata-se de uma aplicação jsf que usa JPA e EJB 3.0. O código das entities que representa o relacionamento no banco é esse:
@Entity
class Cliente{
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER, mappedBy="cliente")
private List<Pedido> pedidos;
...
}
@Entity
class Pedido{
@ManytoOne
private Cliente cliente;
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER, mappedBy="pedido")
private List<ItemPedido> pedidos;
...
}
@Entity
class ItemPedido{
@ManytoOne
private Pedido pedido;
}
Essa exceção está ocorrendo na relação entre Pedido e ItemPedido, quando tento acessar a lista de itens do pedido. Se alguém puder me ajudar ficarei muito agradecido.