浏览 2311 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (5) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-08-21
最后修改:2009-08-24
当页面上的父类里面有子类集合时会发生懒加载异常。例如: hbm文件: <set name="familyMembers" cascade="all" inverse="false" fetch="select" lazy="true"> <key column="APPOINTID_"></key> <one-to-many class="FamilySocietymembers"/> </set> public class AppointCadreMove extends PK{ /** * 家庭成员及重要社会关系 */ private Set<FamilySocietymembers> familyMembers; } 当在点击AppointCadreMove 列表中的某一条书籍时就发生隐形懒加载异常,进入到form页面后点击FamilySocietymembers的相关操作就会发生隐形的懒加载异常。解决办法当在点击列表某一条记入的时候出发一个acitonListener 从数据库从新查一遍在查询的过程中利用hibernate的 强制加载(Hibernate.initialize(Object proxy) )来处理 代码如下: AppointCadreMove cadreMovePs = cadreMoveDao.getEntityById(id); Hibernate.initialize(cadreMovePs.getFamilyMembers()); Hibernate.initialize(cadreMovePs.getApointRemoveReason());这样就相当于把全局的lazy=“true” 修改为lazy="false" 问题解决 偶了。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |