Bonjour,
Le problème à été traité plus d'une fois mais j'ai rien trouvé qui réponde à mon problème donc je me permet de vous en faire part.
Je souhaite récupérer les informations de 3 tables qui sont liées les unes au autres. C'est un schema classique où une commune est dans un département qui lui meme est dans une région.
J'ai les tables suivantes qui me pose problème car j'ai ma table commune qui à une clé primaire composée mais en plus un des attributs de cette clé primaire qui référence la clé primaire de la table département.
C'est du postgreSQL comme base
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 CREATE TABLE "public"."sit_com_commune" ( "com_cod_com" CHAR(3) NOT NULL, "dep_cod_dep" CHAR(3) NOT NULL, "com_artmin_com" VARCHAR(5), "com_nccenr_com" VARCHAR(70), CONSTRAINT "pk_sit_com_commune" PRIMARY KEY("dep_cod_dep", "com_cod_com"), CONSTRAINT "com_dep" FOREIGN KEY ("dep_cod_dep") REFERENCES "public"."sit_dep_departement"("dep_cod_dep") ON DELETE RESTRICT ON UPDATE RESTRICT NOT DEFERRABLE ) WITHOUT OIDS; COMMENT ON COLUMN "public"."sit_com_commune"."com_cod_com" IS 'Code commune'; COMMENT ON COLUMN "public"."sit_com_commune"."dep_cod_dep" IS 'Code département'; COMMENT ON COLUMN "public"."sit_com_commune"."com_artmin_com" IS 'Article Commune'; COMMENT ON COLUMN "public"."sit_com_commune"."com_nccenr_com" IS 'Nom Commune';J'ai les 2 fichiers de mapping suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 CREATE TABLE "public"."sit_dep_departement" ( "dep_cod_dep" CHAR(3) NOT NULL, "reg_region" CHAR(2) NOT NULL, "dep_nccenr_dep" VARCHAR(70), CONSTRAINT "pk_sit_dep_departement" PRIMARY KEY("dep_cod_dep"), CONSTRAINT "dep_reg" FOREIGN KEY ("reg_region") REFERENCES "public"."sit_reg_region"("reg_region") ON DELETE RESTRICT ON UPDATE RESTRICT NOT DEFERRABLE ) WITHOUT OIDS; COMMENT ON COLUMN "public"."sit_dep_departement"."dep_cod_dep" IS 'Code département'; COMMENT ON COLUMN "public"."sit_dep_departement"."reg_region" IS 'Code Région'; COMMENT ON COLUMN "public"."sit_dep_departement"."dep_nccenr_dep" IS 'Nom département';
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="i2.xxx.yyy.zzz.reference.niveau.valueobject"> <class name="DepartementElementReference" table="sit_dep_departement"> <id name="codeDepartement" type="string"> <column name="dep_cod_dep" sql-type="char(3)" unique="true"/> </id> <property name="codeRegion" type="integer"> <column name="reg_region" sql-type="char(2)" not-null="true"/> </property> <property name="nomDepartement" type="string"> <column name="dep_nccenr_dep" sql-type="varchar(70)" not-null="false"/> </property> </class> </hibernate-mapping>Et sur le dernier, j'ai le message d'erreur suivant que je ne comprends pas. j'ai beau regarder par rapport à la DTD des fichiers de mapping sur le site d'hibernate, je vois pas pourquoi je me fais renvoyer balader comme ca.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="i2.xxx.yyy.zzz.reference.niveau.valueobject"> <class name="CommuneElementReference" table="sit_com_commune"> <composide-id name="comp_id" class="communePK"> <key-property name="codeCommune" type="string" > <column name="com_cod_com" sql-type="char(3)" not-null="true"/> </key-property> <key-property name="codeDepartement" type="string" > <column name="dep_cod_dep" sql-type="char(3)" not-null="true"/> </key-property> </composide-id> <property name="article" type="string"> <column name="com_artmin_com" sql-type="varchar(5)" not-null="false"/> </property> <property name="nomCommune" type="string"> <column name="com_nccenr_com" sql-type="varchar(70)" not-null="false"/> </property> </class> </hibernate-mapping>
Si quelqu'un peut m'aider la dessus, parce que j'ai du mal à trouver. Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Severity and Description Path Resource Location Creation Time Id The content of element type "class" must match "(meta*,subselect?,cache?,synchronize*,comment?,tuplizer*,(id|composite-id),discriminator?,natural-id?,(version|timestamp)?,(property|many-to-one|one-to-one|component|dynamic-component|properties|any|map|set|list|bag|idbag|array|primitive-array)*,((join*,subclass*)|joined-subclass*|union-subclass*),loader?,sql-insert?,sql-update?,sql-delete?,filter*,resultset*,(query|sql-query)*)".![]()
Partager