0

我想问你关于hiberbnate我有2页,第一个是制造商“Fabricant”的数据表,第二个是另一个页面数据表组件“composant”当我尝试向我的表中添加一个新组件时,我应该选择他的制造商“Fabricant”使用但已显示此错误:(

未能延迟初始化角色集合:com.persistance.Fabricant.composants,没有会话或会话已关闭

这是我的代码

<h:outputLabel value="Fabricant:"   />  
            <p:selectOneMenu id="fab" value="#{composantbean.fabricant}" required="true">  
                <f:selectItem itemLabel="Select Fabricant" itemValue="" />  
                <f:selectItems value="#{fabricantbean.list}" />  
            </p:selectOneMenu>  

composanbean 和 fabricantbean 是范围会话

4

1 回答 1

0

现在可以了,我更改了我的“ManufacturerDAO”,删除 session.getTransaction.commit() 但不知道这个策略是否可以

public List<Fabricant> findAll () { 

        Session session = sessionFactory.getCurrentSession(); 
        session.beginTransaction();
        Criteria crit = session.createCriteria(Fabricant.class);
        list=crit.list();
    /*  session.getTransaction().commit(); */
        return  list;
    }
于 2013-04-17T11:02:02.563 回答