OK, I'm getting this a lot now, and I don't know what I am doing wrong.
I am fetching a "parent" object with the following joins:
{code}@OneToMany(mappedBy="report",fetch=FetchType.EAGER)
@Fetch(FetchMode.SUBSELECT)
@OrderBy(value="lineNumber")
private List<AccountSummaryDetail> details;@OneToMany(mappedBy="report",fetch=FetchType.EAGER)
@Fetch(FetchMode.SUBSELECT)
private Set<AccountSummaryLightCount> counts;
@ManyToMany(fetch=FetchType.EAGER)
@JoinTable(
name = "AREA_TO_ACCOUNT",
joinColumns=@JoinColumn(name="ACCOUNT_NUMBER", referencedColumnName="ACCOUNT_NUMBER"),
inverseJoinColumns=@JoinColumn(name="AREA_ID")
)
@Fetch(FetchMode.SUBSELECT)
private Set<Area> areas;{code}
When I do a basic Criteria search,
{code}Criteria c = session.createCriteria(AccountSummaryReport.class);
List rawResults = c.list();{code}
I get the following exception:
{code}Caused by: org.hibernate.HibernateException: collection is not associated with any session
at org.hibernate.collection.AbstractPersistentCollection.forceInitialization(AbstractPersistentCollection.java:449)
at org.hibernate.engine.StatefulPersistenceContext.initializeNonLazyCollections(StatefulPersistenceContext.java:844)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:241)
at org.hibernate.loader.Loader.doList(Loader.java:2213)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
at org.hibernate.loader.Loader.list(Loader.java:2099)
at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1569)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283){code}
I don't see what I am doing wrong!! Help?
Comments