IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

Débuter avec hibernate


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 152
    Par défaut Débuter avec hibernate
    Bonjour,
    Je suis débutant avec hibernate et j'ai une erreur que je n'arrive pas à résoudre :
    J'utilise hibernate + struts + tomcat + eclipse + mysql :
    L'erreur est la suivante :
    Could not parse mapping document from resource
    dataBase/Utilisateur.hbm.xml


    Le fichier Utilisateur.hbm.xml :

    Code xml : 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
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping 
    	PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
            "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
     
     
     
    <hibernate-mapping>
     
        <class name="dataBase/Utilisateur" table="utilisateur">
            <id name="email" type="String" unsaved-value="null" >
                 <column name="email" sql-type="char(40)" not-null="true"/> 
                <generator class="assigned"/>
            </id>
     
            <property name="nom" column="nom"/>
            <property name="prenom" column="prenom"/>
            <property name="email" column="email"/>
        </class>
     
    </hibernate-mapping>

    La class correspondante :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    public class Utilisateur {
     
     
    	public String email=null;
    	public String nom=null;
    	public String prenom=null;	
     
        public Utilisateur() {
     
        }
     
    	public String getEmail() {
    		return email;
    	}
     
    	public void setEmail(String email) {
    		this.email = email;
    	}
     
    	public String getNom() {
    		return nom;
    	}
     
    	public void setNom(String nom) {
    		this.nom = nom;
    	}
     
    	public String getPrenom() {
    		return prenom;
    	}
     
    	public void setPrenom(String prenom) {
    		this.prenom = prenom;
    	}
     
    }

    La table sous mysql :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TABLE `utilisateur` (
      `email` varchar(30) NOT NULL,
      `nom` varchar(20) NOT NULL,
      `prenom` varchar(20) NOT NULL,
      PRIMARY KEY  (`email`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;


    le fichier hibernate.cfg.xml :

    Code xml : 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
    <?xml version='1.0' encoding='utf-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
            "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
            "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
     
     
    <hibernate-configuration>
     
        <session-factory>        
            <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="connection.url">jdbc:mysql://localhost:3306/maDataBase</property>
            <property name="connection.username">root</property>
            <property name="connection.password">mae</property> 
            <property name="show_sql">false</property>       
            <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
            <mapping resource="dataBase/Utilisateur.hbm.xml"/>
        </session-factory>
     
    </hibernate-configuration>


    merci pour votre aide.

  2. #2
    Membre Expert Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Par défaut
    Apparemment ton fichier Utilisateur.hbm.xml n'esyt pas situé au bon endroit. Tu pourrais nous montrer l'arborescence de ton application?

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 152
    Par défaut
    Merci pour ton aide :

    l'arborescence est la suivante :
    WEB-INF/src/dataBase/Utilisateur.java
    WEB-INF/src/dataBase/Utilisateur.hbm.xml
    WEB-INF/src/hibernate.cfg.xml

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    j ai comme un doute mais il me semble que tu oublies de dire a hibernate de loadé les fichiers de mapping

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <session-factory>
       ...
       <mapping resource="TCar.hbm.xml" />
       <mapping resource="TPerson.hbm.xml" />
    </session-factory>

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 152
    Par défaut
    Bonjour j'ai pu avancer en ajoutant dans le fichier de mapping le type de la colonne :

    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
     
    <hibernate-mapping package="dataBase">
        <class name="Utilisateur" table="utilisateur">         
     
            <id name="email" type="String" unsaved-value="null">
                 <column name="email" sql-type="char(40)" not-null="true"/> 
                 <generator class="assigned"/>
            </id>        
     
            <property name="nom"  type="String" column="nom"/> 
            <property name="prenom"  type="String" column="prenom"/>
     
        </class>
     
    </hibernate-mapping>

    mais j'ai une autre erreur maintenant : Could not determine type for: String, at table: utilisateur, for columns: [org.hibernate.mapping.Column(nom)]

    alors que le shéma de la base me semble bon :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TABLE `utilisateur` (
      `email` varchar(30) NOT NULL,
      `nom` varchar(20) NOT NULL,
      `prenom` varchar(20) NOT NULL,
      PRIMARY KEY  (`email`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;


    merci de m'aider je patauge ....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Débuter avec Hibernate
    Par bulldozer27350 dans le forum Hibernate
    Réponses: 2
    Dernier message: 09/11/2013, 07h24
  2. Débuter avec hibernate
    Par ensmaj dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 16/02/2012, 12h01
  3. Débuter avec Hibernate Search
    Par psyghost dans le forum Hibernate
    Réponses: 1
    Dernier message: 23/06/2009, 08h57
  4. Réponses: 5
    Dernier message: 26/04/2007, 10h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo