Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1377 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Hibernate] Pb mapping Oracle

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Hibernate] Pb mapping Oracle

n°1147542
lebechen
Posté le 12-07-2005 à 10:50:46  profilanswer
 

Bonjour,
 
je débute sur Struts/Hibernate, et là, j'ai un pb de mapping Hibernate vers une base Oracle.
 
Je vous donne mon fichier Fiche.hbm.xml :
 

Code :
  1. <?xml version="1.0"?>
  2. <!DOCTYPE hibernate-mapping PUBLIC
  3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
  5. <hibernate-mapping>
  6. <class name="beans.Fiche" table="FICHE">
  7.  <id name="idFiche" column="ID_FICHE" type="java.lang.Integer">
  8.   <column name="ID_FICHE" sql-type="NUMBER" not-null="true"/>
  9.   <generator class="sequence"/>
  10.  </id>
  11.  <property name="identifiantcadre" column="IDENTIFIANTCADRE" type="java.lang.String"/>
  12.  <property name="nomcadre" column="NOMCADRE" type="java.lang.String" length="50"/>
  13.  <property name="prenomcadre" column="PRENOMCADRE" type="java.lang.String"/>
  14.  <property name="dernieremodif" column="DERNIEREMODIF" type="java.lang.Date"/>
  15.  <property name="auteurmodif" column="AUTEURMODIF" type="java.lang.String"/>
  16. </class>
  17. </hibernate-mapping>


 
et voici le résultat dans la log de Tomcat :

Code :
  1. Mapping resource: beans/Fiche.hbm.xml
  2. 2005-07-12 10:33:15,609 DEBUG [http8080-Processor4] (DTDEntityResolver.java:42) - trying to locate http://hibernate.sourceforge.net/h [...] ng-3.0.dtd in classpath under org/hibernate/
  3. 2005-07-12 10:33:15,609 DEBUG [http8080-Processor4] (DTDEntityResolver.java:53) - found http://hibernate.sourceforge.net/h [...] ng-3.0.dtd in classpath
  4. 2005-07-12 10:33:15,781  INFO [http8080-Processor4] (HbmBinder.java:260) - Mapping class: beans.Fiche -> FICHE
  5. 2005-07-12 10:33:15,796 ERROR [http8080-Processor4] (Configuration.java:365) - Could not compile the mapping document
  6. org.hibernate.MappingException: column attribute may not be used together with <column> subelement


 
C'est un petit bout de trois fois rien qui nous bloque, et c'est d'autant plus difficile à trouver :??: .
Merci d'avance
Hervé

mood
Publicité
Posté le 12-07-2005 à 10:50:46  profilanswer
 

n°1147661
sebi
Posté le 12-07-2005 à 11:53:04  profilanswer
 

au lieu de faire ca :
 

Code :
  1. # <id name="idFiche" column="ID_FICHE" type="java.lang.Integer">
  2. #             <column name="ID_FICHE" sql-type="NUMBER" not-null="true"/>
  3. #             <generator class="sequence"/>
  4. #         </id>


 
essaye un peu et dit ce que ca donne :  
 

Code :
  1. # <id name="idFiche" column="ID_FICHE" type="java.lang.Integer">
  2. #                 <generator class="sequence"/>
  3. # </id>


 
en fait vires la ligne <column name ...  
ou alors tu fais l'inverse tu vires l'attribut column de l'element <id>

n°1147683
the real m​oins moins
Posté le 12-07-2005 à 12:00:14  profilanswer
 

+1 :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°1148138
lebechen
Posté le 12-07-2005 à 16:25:07  profilanswer
 

sebi a écrit :

au lieu de faire ca :
 

Code :
  1. # <id name="idFiche" column="ID_FICHE" type="java.lang.Integer">
  2. #             <column name="ID_FICHE" sql-type="NUMBER" not-null="true"/>
  3. #             <generator class="sequence"/>
  4. #         </id>


 
essaye un peu et dit ce que ca donne :  
 

Code :
  1. # <id name="idFiche" column="ID_FICHE" type="java.lang.Integer">
  2. #                 <generator class="sequence"/>
  3. # </id>


 
en fait vires la ligne <column name ...  
ou alors tu fais l'inverse tu vires l'attribut column de l'element <id>


 
 
A priori, ça venait de l'appel d'un bean voisin Signaletique qui hérite du bean Fiche dans le modèle objet.
Du coup, Fiche.hbm.xml s'écrit :

Code :
  1. <?xml version="1.0"?>
  2. <!DOCTYPE hibernate-mapping PUBLIC
  3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
  5. <hibernate-mapping>
  6.     <class name="beans.Fiche" table="FICHE" >
  7.      <id name="id_fiche" type="integer" unsaved-value="0">
  8.   <column name="ID_FICHE" sql-type="NUMBER" not-null="true"/>
  9.   <generator class="assigned"/>
  10.  </id>
  11.         <property name="identifiantCadre" column="IDENTIFIANTCADRE" type="string" not-null="true"/>
  12.         <property name="nomCadre" column="NOMCADRE" type="string" not-null="true"/>
  13.         <property name="prenomCadre" column="PRENOMCADRE" type="string" />
  14.        
  15.         <joined-subclass name="beans.Signaletique" table="SIGNALETIQUE">
  16.           <key column="ID_FICHE"/>
  17.           <property name="sexe" column="SEXE" type="string"/>
  18.           <property name="DateNominationStatutFonction" column="DATENOMINATIONSTATUTFONCTION" type="date" />
  19.         </joined-subclass>
  20.     </class>
  21. </hibernate-mapping>


 
En plus, j'appelais directement une page jsp au lieu d'appeler une action Struts (qui utilise bien cette page jsp, mais après avoir initialisé les beans). Je pouvais chercher longtemps une erreur du côté Hibernate  :sleep: ...
Mais bon, je débute  :D ...
 
Merci pour les réponses,
Hervé

n°1148275
sebi
Posté le 12-07-2005 à 18:36:43  profilanswer
 

oui peut etre mais l'erreur que tu a mis sur ton post venait bien d'une erreur xml , c'est d'ailleurs bien explicite :  
 
org.hibernate.MappingException: column attribute may not be used together with <column> subelement

n°1148608
lebechen
Posté le 13-07-2005 à 09:34:40  profilanswer
 

sebi a écrit :

oui peut etre mais l'erreur que tu a mis sur ton post venait bien d'une erreur xml , c'est d'ailleurs bien explicite :  
 
org.hibernate.MappingException: column attribute may not be used together with <column> subelement


 
Ben oui, mais maintenant il y a toujours des attributs <column> et ça marche, je n'ai plus le message dans la log.
Je ne vois que l'élément <joined-subclass> qui fasse la différence :whistle: ...
 
Je reviendrai sur ce site si j'ai d'autres pbs.
 
A+


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Hibernate] Pb mapping Oracle

 

Sujets relatifs
Questions sur Oracle 8iservices Oracle
Suppression de base sous Oracle 8.1.7Oracle : Import/Export
Probleme de mapping memoire[résolu]Requête équivalente MySQL pour Oracle
[Oracle] Jointure, avec une clé étrangère pouvant valoir nullOracle passer des arguments
Probleme de connexion ORACLE et C#ORACLE : occupation mémoire du varchar2
Plus de sujets relatifs à : [Hibernate] Pb mapping Oracle


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR