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 :

Erreur log4j hibernate


Sujet :

Hibernate Java

  1. #1
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut Erreur log4j hibernate
    bonjour,

    j'ai réalisé une petit class pour tester hibernate mais j'ai eu cette erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
    log4j:WARN Please initialize the log4j system properly.
    est ce que vous avez des idées.

    Merci

  2. #2
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Ce n'est pas une erreur, mais juste un warning. Cela indique qu'il n'a pas trouvé de fichier de configuration de log4J

  3. #3
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    dans mon application il ya une classe de test elle contient ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DepartementDAO departementDAO = new DepartementDAO();
    departementDAO.addDepartement("dept1", new Float(1000));
    mais l'ajout n'est pas réaliser:

    est ce que ce warning peut causé ce mal fonctionnement?

  4. #4
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Non, de façon sure aucun rapport ... Le warning indique juste que tu n'auras pas de fichier de log pour hibernate, rien de plus

  5. #5
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    j'ai trouvé d'ou l'erreur vient.

    ceci est ma methode:

    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
     public String addDepartement(String nom, Float budget) {
    
    		try {
    		
    			Departement departement = new Departement();
    			Session session = HibernateSessionFactory.getSession();
    			departement.setNomdepartement(nom);
    			departement.setBudgetdepartement(budget);
    			Transaction tx = session.beginTransaction();
    			getSession().save(departement);
    			tx.commit();
    			return null;
    		} catch (ConstraintViolationException e2) {
    			
    			return e2.getSQLException().toString();
    		} catch (HibernateException e) {System.out.println("ici est l'erreur");			return.toString();
    		} finally {
    			try {
    				HibernateSessionFactory.closeSession();
    			} catch (HibernateException e1) {
    				e1.printStackTrace();
    			}
    		}
    
    	}

  6. #6
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Si tu n'affiches pas l'exception tu vas avoir du mal à savoir pourquoi elle apparait ...

  7. #7
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    exactement comme tu as dit
    alors ceci est mon erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    org.hibernate.exception.SQLGrammarException: could not insert: [gestdepartements.persistance.jdo.Departement]

  8. #8
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Tu peux nous donner ton fichier de mapping pour departement ?

  9. #9
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    rien de special dans la classe Departement:


    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
    package gestdepartements.persistance.jdo;
    // Generated by MyEclipse - Hibernate Tools
     
     
     
    /**
     * Departement generated by MyEclipse - Hibernate Tools
     */
    public class Departement extends AbstractDepartement implements java.io.Serializable {
     
        // Constructors
     
        /**
             * 
             */
    	private static final long serialVersionUID = 1L;
     
     
    	/** default constructor */
        public Departement() {
        }
     
     
        /** full constructor */
        public Departement(String nomdepartement, Float budgetdepartement) {
            super(nomdepartement, budgetdepartement);        
        }
     
    }
    et aussi pour : AbstractDepartement :

    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    package gestdepartements.persistance.jdo;
     
     
     
    /**
     * AbstractDepartement generated by MyEclipse - Hibernate Tools
     */
     
    public abstract class AbstractDepartement  implements java.io.Serializable {
     
     
        // Fields    
     
         private  Long iddepartement;
         private String nomdepartement;
         private Float budgetdepartement;
     
     
        // Constructors
     
        /** default constructor */
        public AbstractDepartement() {
        }
     
     
        /** full constructor */
        public AbstractDepartement(String nomdepartement, Float budgetdepartement) {
            this.nomdepartement = nomdepartement;
            this.budgetdepartement = budgetdepartement;
        }
     
     
        // Property accessors
     
        public Long getIddepartement() {
            return this.iddepartement;
        }
     
        public void setIddepartement(Long iddepartement) {
            this.iddepartement = iddepartement;
        }
     
        public String getNomdepartement() {
            return this.nomdepartement;
        }
     
        public void setNomdepartement(String nomdepartement) {
            this.nomdepartement = nomdepartement;
        }
     
        public Float getBudgetdepartement() {
            return this.budgetdepartement;
        }
     
        public void setBudgetdepartement(Float budgetdepartement) {
            this.budgetdepartement = budgetdepartement;
        }
     
     
     
     
     
     
     
     
     
    }

  10. #10
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    ok bien sure :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <hibernate-mapping>
        <class name="gestdepartements.persistance.jdo.Departement" table="DEPARTEMENT" schema="dbo" catalog="DBTEST">
            <id name="iddepartement" type="java.lang.Long">
                <column name="IDDEPARTEMENT" precision="18" scale="0" />
                <generator class="native" />
            </id>
            <property name="nomdepartement" type="java.lang.String">
                <column name="NOMDEPARTEMENT" />
            </property>
            <property name="budgetdepartement" type="java.lang.Float">
                <column name="BUDGETDEPARTEMENT" precision="53" scale="0" />
            </property>
        </class>
    </hibernate-mapping>

  11. #11
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    1) Pourquoi tu fais getSession().save(..) et pas session.save(...)
    2) Tu aurais la stack complète de l'exception
    3) Tu as des logs au niveau de la bdd des requêtes pour voir ce qu'elle recoit ?

  12. #12
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    très, très, trèssss brillantes idées chtig merci infiniment.
    vraiment vos idées m'ont été d'une grande utilité.

    bon la stack est comme suite:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    ...
    Caused by: java.sql.SQLException: Field 'IDDEPARTEMENT' doesn't have a default value
    	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
    	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
    	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
    ...
    est ce que vous avez des idées?

  13. #13
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    c'été une erreur de maunque de valeur d'un champs dans la base de données, j'ai modifier ce champs dans la base et le modifiant en auto incrément, et cela m'a corrigé le problème.

  14. #14
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Désolé de ne pas avoir répondu plus tôt, mais apparemment tu n'as pas eu besoin de moi
    Un petit best practice : toujours logguer l'exception complète, jamais uniquement le getMessage()

  15. #15
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Points : 955
    Points
    955
    Par défaut
    Merci chtig, vraiment vos conseil sont très utils.

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

Discussions similaires

  1. Erreur NullPointerException - Hibernate
    Par elloyeen dans le forum Struts 1
    Réponses: 4
    Dernier message: 30/12/2007, 03h20
  2. [log4j] Erreur LOG4J lors d'un déploiement Websphere
    Par Dirty Henry dans le forum Websphere
    Réponses: 4
    Dernier message: 05/09/2007, 17h44
  3. Réponses: 1
    Dernier message: 03/07/2007, 14h57
  4. erreur d 'hibernate
    Par mihmi dans le forum Hibernate
    Réponses: 2
    Dernier message: 09/10/2006, 12h35
  5. erreur requete hibernate
    Par rosros dans le forum Hibernate
    Réponses: 6
    Dernier message: 14/09/2006, 10h27

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