Bonjour,
J'ai un nouveau problème à soumettre en espérant que quelqu'un saura
m'apporter des éléments de réponses.
J'ai une Person qui peut être dans un Building. La table d'association qualifiée PersonBuilding (idPer, idBuilding, officeName) est mappée au travers d'un composite-element.
Mon problème c'est que si je mappe mon ensemble via un Set ou un Bag je n'ai pas le même fonctionnement et dans tous les cas je n'ai pas ce qu'il faut.
Quand je cherche a recuperer la liste des building a travers l'association personbuilding je n'obteins pas le bon nombre (2 pour la personne donnée)
- je mappe avec set => 1 resultat au lieu de 2
- je mappe avec bag => 4 resultats au lieu de 2
Classe Person : Set listPersonBuilding (ou List listPersonbuilding)
Classe personBuilding : Person p ; Building b; String officeName ;
Mon mapping person dans Person.hbn.xml
<bag name="listPersonBuilding" table="PERSONBUILDING">
<key column="PBU_FK_ID_PER" />
<composite-element class="com.sgcib.pops.business.model.person.PersonBuilding" >
<parent name="person" />
<property name="officeName" column="PBU_VA_OFFICENAME" type="java.lang.String" length="50" />
<many-to-one name="building" column="PBU_FK_ID_BUI" />
</composite-element>
</bag>
Ou bien avec un Set
<set name="listPersonBuilding" table="PERSONBUILDING">
<key column="PBU_FK_ID_PER" not-null="true" />
<composite-element class="com.sgcib.pops.business.model.person.PersonBuilding" >
<parent name="person" />
<property name="officeName" column="PBU_VA_OFFICENAME" type="java.lang.String" length="50" />
<many-to-one name="building" column="PBU_FK_ID_BUI" />
</composite-element>
</set>
Mon mapping building cans Building.hbn.xml
<class name="Building" table="BUILDING">
<id name="id" column="BUI_N_ID">
<generator class="sequence">
<param name="sequence">S_BUILDING</param>
</generator>
</id>
<property name="name" type="java.lang.String" column="BUI_VA_NAME" />
</class>
Quelqu'un saurait-il me dire ou mon mapping n'est aps bon ? et surtout pourquoi les deux utilisations différentes ne donnent pas le meme resultat et jamais le bon ?
|