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

Développement Web en Java Discussion :

Hibernate3 avec Helios, Spring


Sujet :

Développement Web en Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 100
    Points : 37
    Points
    37
    Par défaut Hibernate3 avec Helios, Spring
    Bonjour

    Je suis débutante en Hibernate et Spring. J'ai crée un projet web dynamique. j'ai rajouté la librairies hibernate et spring. J'ai crée une base de donné avec Oracle. puis sous eclipse, j'ai crée un fichier de cfg.xml et hbm.xml ensuite ça m'a généré tous les packahe necessaies.

    En compilant le projet, je reçois une erreur qui me dit que SAx parser n'arrive pas à lire le fichier de configuration de hibernate :
    javax.servlet.ServletException: org.hibernate.HibernateException: Could not parse configuration:
    org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

    cause mère

    org.hibernate.HibernateException: Could not parse configuration:
    org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1494)
    org.hibernate.cfg.Configuration.configure(Configuration.java:1428)
    com.tn.ims.model.base._BaseRootDAO.initialize(_BaseRootDAO.java:104)
    com.tn.ims.model.base._BaseRootDAO.initialize(_BaseRootDAO.java:88)
    com.tn.ims.model.base._BaseRootDAO.getSessionFactory(_BaseRootDAO.java:145)
    com.tn.ims.model.base._BaseRootDAO.getSession(_BaseRootDAO.java:64)
    com.tn.ims.model.base._BaseRootDAO.getSession(_BaseRootDAO.java:42)
    com.tn.ims.model.base._BaseRootDAO.get(_BaseRootDAO.java:216)
    com.tn.ims.model.base.BasePersonneDAO.get(BasePersonneDAO.java:49)
    com.tn.ims.service.PersonneManager.isExiste(PersonneManager.java:45)
    com.tn.ims.service.PersonneManager.savePersonne(PersonneManager.java:52)
    com.tn.ims.action.PersonneAction.execute(PersonneAction.java:56)
    org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
    org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
    org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

    cause mère

    org.dom4j.DocumentException: Error on line 1 of document : Content is not allowed in prolog. Nested exception: Content is not allowed in prolog.
    org.dom4j.io.SAXReader.read(SAXReader.java:339)
    org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1484)
    org.hibernate.cfg.Configuration.configure(Configuration.java:1428)
    com.tn.ims.model.base._BaseRootDAO.initialize(_BaseRootDAO.java:104)
    com.tn.ims.model.base._BaseRootDAO.initialize(_BaseRootDAO.java:88)
    com.tn.ims.model.base._BaseRootDAO.getSessionFactory(_BaseRootDAO.java:145)
    com.tn.ims.model.base._BaseRootDAO.getSession(_BaseRootDAO.java:64)
    com.tn.ims.model.base._BaseRootDAO.getSession(_BaseRootDAO.java:42)
    com.tn.ims.model.base._BaseRootDAO.get(_BaseRootDAO.java:216)
    com.tn.ims.model.base.BasePersonneDAO.get(BasePersonneDAO.java:49)
    com.tn.ims.service.PersonneManager.isExiste(PersonneManager.java:45)
    com.tn.ims.service.PersonneManager.savePersonne(PersonneManager.java:52)
    com.tn.ims.action.PersonneAction.execute(PersonneAction.java:56)
    org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
    org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
    org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 25
    Points : 40
    Points
    40
    Par défaut
    Hello,
    C'est difficile à dire sans voir les fichiers xml en question . Est-ce que tu arrives à les faire valider par eclipse ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 100
    Points : 37
    Points
    37
    Par défaut Re : Hibernate et Spring
    Hello
    les fichiers xml sont validés par eclipse.

    Voici le fichier hibernate.cfg.xml :

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-configuration
    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

    <hibernate-configuration>
    <session-factory >

    <!-- local connection properties -->
    <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521e</property>
    <property name="hibernate.connection.driver_class">oracle.jdbc.OracleDriver</property>
    <property name="hibernate.connection.username">user</property>
    <property name="hibernate.connection.password">user</property>
    <!-- property name="hibernate.connection.pool_size"></property -->

    <!-- dialect for Oracle (any version) -->
    <property name="dialect">org.hibernate.dialect.OracleDialect</property>

    <property name="hibernate.show_sql">false</property>
    <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>

    </session-factory>
    </hibernate-configuration>

    voici le fichier Personne.hbm.xml :

    <?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="com.tn.ims.model">
    <class
    name="Personne"
    table="PERSONNE"
    >
    <meta attribute="sync-DAO">true</meta>
    <id
    name="Id"
    type="integer"
    column="CODEP"
    >

    </id>

    <property
    name="Nom"
    column="NOM"
    type="string"
    not-null="false"
    length="50"
    />
    <property
    name="Prenom"
    column="PRENOM"
    type="string"
    not-null="false"
    length="50"
    />
    <property
    name="Age"
    column="AGE"
    type="integer"
    not-null="false"
    length="22"
    />


    </class>
    </hibernate-mapping>
    le fichier spring_config.xml :

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlnssi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="
    http://www.springframework.org/schema/beans http://www.springframework.org/schem...-beans-2.5.xsd
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">

    <!-- Debut de la configuration AOP -->

    <bean id="myPersonneDAO" class="com.tn.ims.model.dao.PersonneDAO"/>
    <!-- managerIds sera utilisé pour créer personneDAO, spring va injecter le DAO dans le controleur -->
    <bean id="managerIds"
    class="com.tn.ims.service.PersonneManager">
    <property name="personneDao" ref="myPersonneDAO"/>
    </bean>

    <!-- <bean id="monLogger" class="com.tn.ims.cliniqueHappy.logger.monLogger"/> -->
    <!-- Fin de la configuration AOP -->
    </beans>

    et dans la classe Action et en particulier dans la méthode excute(), on fait ce code pour acceder à la base de données :

    XmlBeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("spring_config.xml"));

    PersonneManager pm = (PersonneManager) beanFactory.getBean("managerIds");

    Personne p = new Personne();
    p.setId(code);
    p.setAge(age);
    p.setNom(userName);
    p.setPrenom(LastName);

    pm.savePersonne(p);

    System.out.println(pm.isExiste(p)+" COUCOUUUUUUUUUUUUUUUUUUUUUUUUUUUUu");

    Avez vous une idée SVP ??

    Je vous remercie d'avance

  4. #4
    Nouveau membre du Club
    Inscrit en
    Juillet 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 29
    Points : 39
    Points
    39
    Par défaut
    Pourquoi tu utilises pas les annotations Hibernate/JPA/Spring ... ? comme ça tu n'a pas de fichiers XML à gérer

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 141
    Points : 178
    Points
    178
    Par défaut
    Ton problème vient du fichier de configuration d'Hibernate plus précisement l'entête du fichier. essaies de changer avec ceci et tu me dis.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?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>
    ..............................
    </hibernate-configuration>

Discussions similaires

  1. [Tapestry] Premier projet avec Tapestry5, Spring et Hibernate
    Par visiteur2 dans le forum Spring Web
    Réponses: 3
    Dernier message: 07/12/2009, 09h12
  2. [EhCache] Configuration avec Hibernate & Spring
    Par kilicool dans le forum Hibernate
    Réponses: 9
    Dernier message: 23/09/2009, 13h44
  3. Réponses: 2
    Dernier message: 25/12/2008, 10h10
  4. Hibernate3.2.6 + spring 2.5.2 + weblogic server 8.1sp4
    Par jpclavery dans le forum Hibernate
    Réponses: 0
    Dernier message: 07/08/2008, 17h42
  5. [Data] Problème de connection jdbc avec dataSource Spring
    Par laurent.c123 dans le forum Spring
    Réponses: 3
    Dernier message: 04/03/2008, 12h29

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