-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 
Author Message
 Post subject: [Hibernate 3] hibernate-tools, comment ça marche ?
PostPosted: Sun Sep 04, 2005 6:56 am 
Newbie

Joined: Sat Sep 03, 2005 4:37 pm
Posts: 2
Bonjour !

Après avoir parcouru bon nombre de documentations, tutoriels et FAQ, je ne parviens toujours pas à utiliser "hbernate-tools" pour créer et/ou mettre à jour mon schema de base de données.
En fait, j'ai trouvé un moyen (un peu barbare) de le faire, en suivant les instructions de la doc dans section 2 et en adaptant le fichier "hibernate.cfg.xml" à mes besoins :
au lieu d'utiliser une "base de données" HSQL DB, j'ai choisi une base de données MysSQL InnoDB et grâce à la ligne
Code:
    <!-- Drop and re-create the database schema on startup -->
    <property name="hbm2ddl.auto">create</property>

à chaque fois que j'appelle la cible "run" de mon fichier build.xml, ça me recrée la base de données avec les classes et champs que j'ai rajouté.
Seulement voilà, ce n'est pas une bonne façon de procéder.

J'ai vu dans la section 21 qu'il existait des outils pour générer un schéma de base de données, et même le mettre à jour sans tout écraser à chaque fois.
J'ai donc rajouté ceci à mon fichier build.xml :
Code:
    <target name="schemaexport">
      <taskdef name="schemaexport"
         classname="org.hibernate.tool.hbm2ddl.SchemaExportTask"
         classpathref="libraries" />

      <schemaexport config="${sourcedir}/hibernate.cfg.xml"
         quiet="no"
         text="no"
         drop="no"
         delimiter=";"
         output="schema-export.sql">
         <fileset dir="${sourcedir}">
            <include name="**/*.hbm.xml" />
         </fileset>
      </schemaexport>
    </target>

Et voilà le résultat quand je lance ant schemaexport :
Code:
BUILD FAILED
/tmp/build.xml:40: Schema text failed: Resource: org/gramaton/Cat.hbm.xml not found


Donc voilà mon problème : je sais pas comment créer une base de données à partir de mes fichiers "hibernate.cfg.xml" et "*.hbm.xml". D'ailleurs, s'il existe un moyen de générer ET les sources java, ET le schema de base de données à partir de ces fichiers, je serais heureux d'apprendre comment faire.

Je suis preneur de toute idée, lien vers une bonne explication ou toute autre forme d'aide.
Merci d'avance.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 05, 2005 7:38 am 
Regular
Regular

Joined: Sat May 15, 2004 4:27 am
Posts: 79
Pour la création de la base de données et/ou la création des POJOS
et des HBM, je fais appel à Middlegen. Qui lui fait appel à certains
Hibernate-tools. Ca marche nickel.

Tu peux toujours essayer

Bon courage


Top
 Profile  
 
 Post subject:
PostPosted: Thu Sep 08, 2005 10:35 am 
Newbie

Joined: Wed Sep 07, 2005 5:54 am
Posts: 16
Location: Chambéry
Bonjour,

Es tu bien certain que les fichiers hbm.xml sont dans ${sourcedir} d'une part.

D'autre part, il est intéressant de noter qu'avec un cfg.xml + les hbm.xml associés, le schema de la base de données se construit à l'exécution d'hibernate.

Test cette ligne dans ton fichier cfg.xml:
<property name="hibernate.hbm2ddl.auto">update</property>


Xavier


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.