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

NetBeans Platform Java Discussion :

Utilisation de Hibernate dans NetBeans Platform


Sujet :

NetBeans Platform Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 3
    Par défaut Utilisation de Hibernate dans NetBeans Platform
    Bonsoir à tous
    j'ai besoin de votre aide
    je veux faire un test sur netbeans platform pour ensuite l'appliquer à mon application.

    Mon problème est le suit:
    j'ai 3 modules + un librairie:
    PatientModel qui contient les info sur le patient
    PatientViewer affiche les nœuds patient
    PatientEditor permet de créer et éditer un patient
    Hibernate contient les outils nécessaires au fonctionnement de hibernate.

    j'ai aussi une table T_PATIENT

    Lorsque j’exécute l'application j'ai cette erreur :

    org.hibernate.MappingException: invalid configuration
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1411)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:1367)
    at com.jpahernate.patientmodel.HibernateUtil.<clinit>(HibernateUtil.java:26)
    at com.jpahibernate.patientviewer.PatientChildren.createKeys(PatientChildren.java:33)
    at org.openide.nodes.AsynchChildren.run(AsynchChildren.java:189)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1424)
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1968)
    Caused by: org.xml.sax.SAXParseException; lineNumber: 4; columnNumber: 26; Le type d'élément "hibernate-configuration" doit être déclaré.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1906)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:742)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:376)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:602)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3063)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:881)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:607)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:835)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1210)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:568)
    at org.dom4j.io.SAXReader.read(SAXReader.java:465)
    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1408)
    ... 6 more
    Caused: java.lang.ExceptionInInitializerError
    at com.jpahibernate.patientviewer.PatientChildren.createKeys(PatientChildren.java:33)
    at org.openide.nodes.AsynchChildren.run(AsynchChildren.java:189)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1424)
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1968)
    Caused: org.openide.util.RequestProcessor$SlowItem: task failed due to
    at org.openide.util.RequestProcessor$Task.schedule(RequestProcessor.java:1465)
    at org.openide.nodes.AsynchChildren.addNotify(AsynchChildren.java:90)
    at org.openide.nodes.Children.callAddNotify(Children.java:568)
    at org.openide.nodes.EntrySupport$Default.getArray(EntrySupport.java:770)
    at org.openide.nodes.EntrySupport$Default.getNodes(EntrySupport.java:172)
    at org.openide.nodes.EntrySupport$Default.getNodes(EntrySupport.java:228)
    at org.openide.nodes.EntrySupport$Default.getNodesCount(EntrySupport.java:232)
    at org.openide.nodes.Children.getNodesCount(Children.java:502)
    at org.openide.explorer.view.VisualizerNode.getChildren(VisualizerNode.java:258)
    at org.openide.explorer.view.VisualizerNode.getChildren(VisualizerNode.java:248)
    at org.openide.explorer.view.VisualizerNode.getChildCount(VisualizerNode.java:325)
    at javax.swing.tree.DefaultTreeModel.getChildCount(DefaultTreeModel.java:186)
    at javax.swing.tree.FixedHeightLayoutCache$FHTreeStateNode.expand(FixedHeightLayoutCache.java:1152)
    at javax.swing.tree.FixedHeightLayoutCache.rebuild(FixedHeightLayoutCache.java:617)
    at javax.swing.tree.FixedHeightLayoutCache.treeStructureChanged(FixedHeightLayoutCache.java:489)
    at javax.swing.plaf.basic.BasicTreeUI$Handler.treeStructureChanged(BasicTreeUI.java:3891)
    at javax.swing.tree.DefaultTreeModel.fireTreeStructureChanged(DefaultTreeModel.java:580)
    at javax.swing.tree.DefaultTreeModel.nodeStructureChanged(DefaultTreeModel.java:365)
    at javax.swing.tree.DefaultTreeModel.setRoot(DefaultTreeModel.java:135)
    at org.openide.explorer.view.NodeTreeModel$1.run(NodeTreeModel.java:122)
    at org.openide.util.Mutex.doEvent(Mutex.java:1341)
    at org.openide.util.Mutex.readAccess(Mutex.java:348)
    at org.openide.explorer.view.NodeTreeModel.setNode(NodeTreeModel.java:107)
    at org.openide.explorer.view.TreeView$4.run(TreeView.java:890)
    at org.openide.util.Mutex.doEvent(Mutex.java:1341)
    at org.openide.util.Mutex.readAccess(Mutex.java:348)
    at org.openide.explorer.view.TreeView.synchronizeRootContext(TreeView.java:880)
    at org.openide.explorer.view.TreeView.lookupExplorerManager(TreeView.java:718)
    at org.openide.explorer.view.TreeView.addNotify(TreeView.java:698)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at org.openide.windows.TopComponent.addNotify(TopComponent.java:287)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at org.netbeans.swing.tabcontrol.TabbedContainer.addNotify(TabbedContainer.java:932)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at java.awt.Container.addNotify(Container.java:2769)
    at javax.swing.JComponent.addNotify(JComponent.java:4743)
    at java.awt.Container.addImpl(Container.java:1114)
    at java.awt.Container.add(Container.java:966)
    at org.netbeans.core.windows.view.ui.MainWindow.setDesktop(MainWindow.java:582)
    at org.netbeans.core.windows.view.ViewHierarchy.setDesktop(ViewHierarchy.java:806)
    at org.netbeans.core.windows.view.ViewHierarchy.setMainWindowDesktop(ViewHierarchy.java:796)
    at org.netbeans.core.windows.view.ViewHierarchy.updateDesktop(ViewHierarchy.java:689)
    at org.netbeans.core.windows.view.DefaultView.showWindowSystem(DefaultView.java:561)
    at org.netbeans.core.windows.view.DefaultView.windowSystemVisibilityChanged(DefaultView.java:501)
    at org.netbeans.core.windows.view.DefaultView.changeGUI(DefaultView.java:183)
    at org.netbeans.core.windows.ViewRequestor.dispatchRequest(ViewRequestor.java:272)
    at org.netbeans.core.windows.ViewRequestor.processVisibilityRequest(ViewRequestor.java:261)
    at org.netbeans.core.windows.ViewRequestor.postVisibilityRequest(ViewRequestor.java:198)
    at org.netbeans.core.windows.ViewRequestor.scheduleRequest(ViewRequestor.java:120)
    at org.netbeans.core.windows.Central.setVisible(Central.java:122)
    at org.netbeans.core.windows.WindowManagerImpl.setVisible(WindowManagerImpl.java:799)
    at org.netbeans.core.windows.WindowSystemImpl.show(WindowSystemImpl.java:87)
    at org.netbeans.core.GuiRunLevel$InitWinSys.run(GuiRunLevel.java:250)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)
    at java.awt.EventQueue.access$000(EventQueue.java:101)
    at java.awt.EventQueue$3.run(EventQueue.java:666)
    at java.awt.EventQueue$3.run(EventQueue.java:664)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)
    at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:148)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    [catch] at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
    voici la configuration hibernate : 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
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <hibernate-configuration>
      <session-factory>
        <property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
        <property name="hibernate.connection.url">jdbc:hsqldb:hsql://192.168.1.101:9001/patientDB;create=true</property>
        <property name="hibernate.connection.username">sa</property>
        <property name="hibernate.connection.password"/>
        <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
        <property name="hibernate.hbm2ddl.auto">update</property>
        <property name="hibernate.show_sql">true</property>
        <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
        <property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
        <property name="hibernate.current_session_context_class">thread</property>
        <mapping resource="com/jpahernate/patientmodel/Patient.hbm.xml"/>
      </session-factory>
    </hibernate-configuration>



    je vous montre la classe HibernateUtil qui se trouve dans le module PatientModel:

    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
    package com.jpahernate.patientmodel;
     
    import java.net.URL;
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.cfg.Configuration;
     
    /**
     * Hibernate Utility class with a convenient method to get Session Factory object.
     *
     * @author Modelis
     */
    public class HibernateUtil {
     
        private static org.hibernate.SessionFactory sessionFactory;
     
        public HibernateUtil() {
        }
     
        static {
                URL url = Thread.currentThread().getContextClassLoader().getResource("com/jpahernate/patientmodel/hibernate.cfg.xml");
                sessionFactory = new Configuration(){}.configure(url).buildSessionFactory();
        }
     
        public static SessionFactory getInstance() {
            return sessionFactory;
        }
     
        public static Session openSession(){
            return sessionFactory.openSession();
        }
     
        public static Session getcurrentSession(){
            return sessionFactory.getCurrentSession();
        }
     
        public static void close() {
            if(sessionFactory != null){
                sessionFactory.close();
            }
            sessionFactory = null;
        }
    }
    ici vous avez le ficher hibernate-mapping nommé : Patient.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
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <hibernate-configuration>
      <session-factory>
        <property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
        <property name="hibernate.connection.url">jdbc:hsqldb:hsql://192.168.1.101:9001/patientDB;create=true</property>
        <property name="hibernate.connection.username">sa</property>
        <property name="hibernate.connection.password"/>
        <property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
        <property name="hibernate.hbm2ddl.auto">update</property>
        <property name="hibernate.show_sql">true</property>
        <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
        <property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
        <property name="hibernate.current_session_context_class">thread</property>
        <mapping resource="com/jpahernate/patientmodel/Patient.hbm.xml"/>
      </session-factory>
    </hibernate-configuration>


    Merci d'avance

  2. #2
    Membre confirmé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 44
    Par défaut
    Quelle est la librairie que tu utilises? Ou as tu ajouté le framework de netbeans à ton projet?

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 3
    Par défaut
    j'ai créer un module que j'ai appelé Hibernate. c'est en fait ma librairie dans laquelle j'ai tous les outils nécessaires au bon fonctionnement d'Hibernate.
    c'est donc un module de mon projet

  4. #4
    Membre confirmé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 44
    Par défaut
    Peut on voir le contenu du fichier Patient.hbm.xml? Tu as donné plutôt celui de hibernate.cfg.xml 2 fois. Cela pourrait expliquer l'erreur org.hibernate.MappingException: invalid configuration!

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 3
    Par défaut
    Voici le fichier Patient.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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC 
    '-//Hibernate/Hibernate Mapping DTD 3.0//EN'
    'http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd'>
    <hibernate-mapping>
        <class name="com.hibernate.patient.model.Patient" table="PATIENT">
            <id name="id" type="int">
                 <genarator class="increment">
            </id>
            <property name="nom" column="NOM" type="string"/>
            <property name="prenom" column="PRENOM" type="string"/>
        </class>
    </hibernate-mapping>

Discussions similaires

  1. [Framework] Spring 3.0 MVC + Hibernate dans netbeans 7.4
    Par SpeedOverflow dans le forum Spring
    Réponses: 0
    Dernier message: 07/08/2014, 12h28
  2. Réponses: 1
    Dernier message: 24/10/2012, 20h01
  3. [Mapping] Utilisation d'Hibernate dans un projet déjà existant
    Par peofofo dans le forum Hibernate
    Réponses: 1
    Dernier message: 19/05/2012, 12h51
  4. Comment utiliser perl plugin dans netbeans
    Par ttttnht dans le forum NetBeans
    Réponses: 0
    Dernier message: 17/12/2009, 20h45
  5. Utilisation du CVS dans NetBeans 5.0
    Par jgfa9 dans le forum NetBeans
    Réponses: 3
    Dernier message: 10/10/2006, 16h04

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