:...,nosessionorsessionwasclosed解决方案:1、设置lazy=false如果是用annotation,则配置如下***@OneToMany( targetEntity=, .,nosessionorsessionwasclosed解决方案:1、设置lazy=false如果是用annotation,则配置如下***@OneToMany( targetEntity=, cascade={,}, mappedBy="course", fetch= )将fetch类型设置成直接获取2、就是使用filter,过滤所有的链接如果在使用filter的时候,要配置事务处理,否则会导致session处于只读状态而不能做修改、删除的动作<web-app><filter><filter-name>hibernateFilter</filter-name><filter-.</filter-class></filter><filter-mapping><filter-name>hibernateFilter</filter-name><url-pattern>*.do</url-pattern></filter-mapping></web-app> failedtolazilyinitializeacollectionofrole:XXXXXX,nosessionorsessionwasclosed例如:.,nosessionorsessionwasclosed这个异常大致意思是说在多对一的时候(并且lazy="false"),对象的实例失败,多数出现的情况有1、粗心造成实例对象类名写错之类的2、逻辑错误如之前就已经传递过来一个实体对象,然后调用实体对象的方法时牵涉到1对多的情况,但此时SESSION已经关闭,所以根本无法进行一对多的操作。3、设计到跨度的问题:这样打比方有多个实体对象,他们直接或则间接的有关联。比如有4个实体,分别是广告信息、广告、广告问答题、广告商:他们之间的关系为:广告商1:n广告广告1:n广告问答题广告商1:n广告商信息大家可以看到广告和广告商信息是没有直接关系的。但我要添加广告的时候我就必须将广告商的实体做为条件。那么这么一来广告商信息可能间接的就必须用上。下面看我的操作:ad(广告),subject(题目) Adad=newAd(); (()); (industry);
错误及解决方案 来自淘豆网www.taodocs.com转载请标明出处.