Hallo,
ich würde gerne drei Klassen in ein korrektes Hibernate-Mapping überführen, als da wären:
- de.xyz.RegularUser, bildet einen Registrierten Benutzer eines Systems ab.
- de.xyz.Organisationseinheit, stellt eine Organisationseinheit dar, der Registrierte Benutzer zugeordnet werden können.
- de.xyz.Mitgliedsrolle, welche ordnet einen regularen Benutzer einer Organisationseinheit zu.
Aus Datenbanksicht ergeben sich hierfür in meinem Schema drei Tabellen: regularuser, organisationseinheit und die Tabelle mitgliedsrolle, die die Assoziationsklasse Mitgliedsrolle abbildet.
Ein reg. Benutzer kann Mitglied mehrerer Organisationseinheiten sein, auf der anderen Seite besitzt eine Organisationseinheit mehrere reg. Benutzer.
Die relevanten Teile der hbm.xml-Dateien sehen so aus:
Das Mapping der Assoziationsklasse sieht so aus:
Die Fehlermeldung, die ich beim Starten meiner Webanwendung erhalte, ist dann aber:
Meine Hibernate Kenntnisse sind nicht sehr tiefgehend. Also bitte ich um eure Hilfe.
Michael[/code]
ich würde gerne drei Klassen in ein korrektes Hibernate-Mapping überführen, als da wären:
- de.xyz.RegularUser, bildet einen Registrierten Benutzer eines Systems ab.
- de.xyz.Organisationseinheit, stellt eine Organisationseinheit dar, der Registrierte Benutzer zugeordnet werden können.
- de.xyz.Mitgliedsrolle, welche ordnet einen regularen Benutzer einer Organisationseinheit zu.
Aus Datenbanksicht ergeben sich hierfür in meinem Schema drei Tabellen: regularuser, organisationseinheit und die Tabelle mitgliedsrolle, die die Assoziationsklasse Mitgliedsrolle abbildet.
Ein reg. Benutzer kann Mitglied mehrerer Organisationseinheiten sein, auf der anderen Seite besitzt eine Organisationseinheit mehrere reg. Benutzer.
Die relevanten Teile der hbm.xml-Dateien sehen so aus:
Code:
<class name="de.xyz.RegularUser"
table="regularuser">
<id name="id" unsaved-value="0">
<generator class="native" />
</id>
Code:
<class name="de.xyz.Organisationseinheit" table="organisationseinheit" >
<id name="id" unsaved-value="0">
<generator class="native" />
</id>
Das Mapping der Assoziationsklasse sieht so aus:
Code:
<hibernate-mapping auto-import="true">
<class name="de.xyz.Mitgliedsrolle"
table="mitgliedsrolle">
<composite-id>
<key-property name="userID"></key-property>
<key-property name="oID"></key-property>
</composite-id>
<many-to-one name="regularuser" column="userID" ></many-to-one>
<many-to-one name="organisationseinheit" column="oID"></many-to-one>
Die Fehlermeldung, die ich beim Starten meiner Webanwendung erhalte, ist dann aber:
Code:
field [regularuser] not found on de.xyz.Mitgliedsrolle
Meine Hibernate Kenntnisse sind nicht sehr tiefgehend. Also bitte ich um eure Hilfe.
Michael[/code]