带有两个hbm.xml文件的MultipleBagFetchException

时间:2013-04-28 20:50:48

标签: java hibernate

我正在使用三个用Hibernate映射的java对象:

TaskModel.class -> 1:N -> TaskModelPropertiesGroup.class -> 1:N -> TaskModelProperty.class

在项目部署中,我遇到了这个例外:

org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags

是的,我已经完成了我的家庭作业,我已经看到了几个关于此的答案,但没有人知道如何修改 hbm.xml 文件。

1 @LazyCollection(LazyCollectionOption.FALSE)

由于我已经在使用lazy="false",因此不知道如何在我的映射中更改它。

2更改列表以设置

我试图更改List<>设置<>我的班级里面,但我不认为这是方式......

以下是我的映射:

<hibernate-mapping>
  <class dynamic-insert="false" dynamic-update="false" mutable="true" name="com.spectotechnologies.website.projects.helper.TaskModel" entity-name="com.spectotechnologies.website.projects.helper.TaskModelComplete" optimistic-lock="version" polymorphism="implicit" select-before-update="false" table="projects_tasksModels">
    <id name="keyTaskModel">
      <generator class="native"/>
    </id>
    <property name="name"/>
    <property name="description"/>
    <!-- Complete -->
    <bag name="propertiesGroups" table="projects_tasksModelsPropertiesGroups" lazy="false" fetch="join" cascade="all">
      <key column="keyTaskModel"/>
      <one-to-many class="com.spectotechnologies.website.projects.helper.TaskModelPropertiesGroupComplete" />
    </bag>
  </class>
</hibernate-mapping>

<hibernate-mapping>
  <class dynamic-insert="false" dynamic-update="false" mutable="true" name="com.spectotechnologies.website.projects.helper.TaskModelPropertiesGroup" entity-name="com.spectotechnologies.website.projects.helper.TaskModelPropertiesGroupComplete" optimistic-lock="version" polymorphism="implicit" select-before-update="false" table="projects_tasksModelsPropertiesGroups">
    <id name="keyTaskModelPropertiesGroup">
      <generator class="native"/>
    </id>
    <property name="keyTaskModel"/>
    <property name="name"/>
    <property name="description"/>
    <!-- Complete -->
    <bag name="properties" table="projects_tasksModelsProperties" lazy="false" fetch="join" cascade="all">
      <key column="keyTaskModelPropertiesGroup"/>
      <one-to-many class="com.spectotechnologies.website.projects.helper.TaskModelProperty" />
    </bag>
  </class>
</hibernate-mapping>

0 个答案:

没有答案