首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

报错:org.hibernate.LazyInitializationException: failed to

2011-11-09 
EL如何获得HashSet中的值在我的ORM里面有Cart映射对象,里面有一个元素为:private Set merchandises new

EL如何获得HashSet中的值
在我的ORM里面有Cart映射对象,里面有一个元素为:
private Set merchandises = new HashSet(); 一个多对多对象
<set name="merchandises"
table="Cartselectedmer"
lazy="true"
cascade="save-update">
<key column="Cart"/>
<many-to-many class="com.ORM.Merchandise" column="Merchandise"/>
</set>
从数据库里面获得Cart后,我利用:
  <c:forEach var="merchandise" items="${order.cart.merchandises}" >

  <tr class="text" align="center" bgcolor="#FFFFFF">
  <td>{merchandise.merName}</td>
  </tr>
   
</c:forEach>
报错:org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.ORM.Cart.merchandises - no session or session was closed
请问是什么原因????????
另外,我要是想获得Cartselectedmer中的值应该怎样操作。

[解决办法]
order.cart.merchandises 这些对象都分别代表什么呢?
order?cart?merchandises?你做的是不是购物车啊?
[解决办法]
你用了延迟加载,是不是你读完数据,数据库的session就关了吧。所以报错

热点排行