我有两个相互关联的实体:
@OneToMany
相关业务规则是:EntityA可以有一个或多个EntityB,因此@OneToMany(fetch = FetchType.EAGER, mappedBy = "entityA")
。每个EntityB只能分配给一个EntityA。最初
应用程序的信息流是这样的 - 首先获得EntityA列表,然后选择一个EntityA,以便获得与所选EntityA关联的所有EntityB的列表。
问题是: 如果我每个EntityA只有一个EntityB,我会在第一个屏幕上得到正确的行为。 如果我有一个EntityB与EntityA关联,则第一个屏幕显示EntityA的数量等于与其关联的EntityB的数量。
但是如果我将EntityA的注释从@OneToMany(fetch = mappedBy = "entityA")
更改为org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: b.c.m.h.m.EntityA.listOfBs, could not initialize proxy - no Session
,则在第一个屏幕中显示正确的行为(一个实体A,无论有多少个实体B与之关联),但是当我尝试访问它我得到以下错误:
{{1}}
这里发生了什么?
编辑 - 在另一个问题上提供的解决方案并没有解决我的问题。