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 :

[hibernate 3] [sybase] plugin ou outil de génération


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 100
    Par défaut [hibernate 3] [sybase] plugin ou outil de génération
    Bonjour,
    Je regarde depuis plusieurs jour pour réaliser le mapping d'une base de données Sybase avec Hibernate. Le problème est qu'apparement un bug empêche de récuperer les PK sur la base Sybase (problème rencontré avec Hibernate Sync et Hibernate Tools).
    Quelqu'un saurait résoudre ce problème ? (si ce n'est pas un bug ...)

    J'allais également tester middlegenIDE, mais j'ai vu qu'il ne générer que des fichiers hibernate 2 même si apparement c'est possible de le faire avec des templates. Quelqu'un pourrait-il me renseigner sur ce sujet ?

    Si ca continue, je vais me résoudre à les faire à la main ces fichiers de mapping (ca va j'ai qu'une cinquantaine de table ... )

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 100
    Par défaut
    Apparement middlegenIDE n'aime pas non plus Sybase !

    J'ai voulu le tester malgrès tout, mais je n'arrive meme pas à générer le fichier middlegen-build.xml. Dans le wizard, quand je selectionne mon JDBC jar, le menu déroulant JDBC driver (juste en dessous) se rempli, mais il y a pas celui que je veux. (et bien sur impossible de taper dans ce %@$# de menu déroulant)
    j'ai com.sybase.jdbcx.SybDriver au lieu de com.sybase.jdbc3.jdbc.SybDriver
    et si j'essaie malgrès tout de charger les tables j'ai le droit au très explicite message d'erreur :
    com.sybase.jdbcx.SybDriver
    Donc à moins que quelqu'un ne puisse me dire comment faire mon middlegen-build.xml à la main, je crois que je l'ai dans le petch !

  3. #3
    Membre éclairé Avatar de bouchette63
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Par défaut
    Bonjour,

    Tu dois écrire une tâche Ant pour exécuter MiddleGen. Tu dois installer Ant dans ton application (jar + fichier build.xml), regardes sur le site officiel. Ensuite tu écris la tâche et c'est parti.

    Je l'ai testé avec Hibernate 3 et il n'y a pas de problème.

    Voici un exemple pour la tâche :

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    <target 
        	name="middlegen" 
          	description="Run Middlegen" 
          	unless="middlegen.skip">
     
     		<taskdef
         		name="middlegen"
         		classname="middlegen.MiddlegenTask"
         		classpathref="classpath"/>
     
          	<middlegen
             	appname="schema"
             	prefsdir="${src.java.dir}"
             	gui="true"
             	databaseurl="${database.url}"
             	initialContextFactory="${java.naming.factory.initial}"
             	providerURL="${java.naming.provider.url}"
             	datasourceJNDIName="${datasource.jndi.name}"
             	driver="${database.driver}"
             	username="${database.userid}"
             	password="${database.password}"
             	schema="${database.schema}">
     
             	<hibernate
              	  	destination="${src.java.dir}"
                	package="com"
                	genXDocletTags="true"
                	genIntergratedCompositeKeys="true"
                	javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"/>
     
          	</middlegen>
    	</target>

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 100
    Par défaut
    Donc c'est un fichier de ce type que génère Eclipse via le Wizard pour créer un nouveau "Middlegen Build File" ?
    Une fois ce fichier créer, comment indiquer à eclipse que ce fichier middlegen-build.xml correspond à ce projet ?
    Ensuite est-ce que middlegen utilise une vue/perspective particulière ? parce que j'ai regarder, je n'ai pas trouver ...

    Sinon, je vais surement abuser, mais à quoi correspondent ces attributs ?
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    initialContextFactory="${java.naming.factory.initial}"
    providerURL="${java.naming.provider.url}"
    datasourceJNDIName="${datasource.jndi.name}"

    Désolé si je suis un peu pressant, mais comme tout projet informatique qui se respecte, on est à la bourre ! Donc je suis un peu pris par le temps ...

  5. #5
    Membre éclairé Avatar de bouchette63
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Par défaut
    Le fichier build.xml se trouve à la base de ton projet, regardes sur le site de Ant pour avoir plus de précision la dessus.

    Lorsque tu exécute la tâche Ant portant sur MiddleGen, tu as une nouvelle fenêtre qui s'ouvre ou tu peux voir le schéma de ta base de données. A partir de là, tu peux modifier quelques petites choses. Et le plus important, tu as un bouton Generate qui te permet de générer les fichiers de mapping XML à partir du scéma de la Base de données.

    Sinon les paramètres que tu as dans la tâche Ant ne sont pas forcément tous complétés. Moi, je n'avais pas de initialContextFactory, datasourceJNDIName et de providerURL par exemple.
    Regardes ICI ou ou encore ici pour plus de précisions.

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 100
    Par défaut
    Merci, je vais jeter un oeil.
    Dans l'urgence j'ai fait les fichiers à la main (à partir de fichiers fournis par Hibernate Sync mais sans les PKs) mais l'idéal ce serait de générer les fichiers direct sans erreurs.
    Même si je n'y crois pas (du fait de l'utilisation de Sybase et du problème de récupération des PKs), je voudrais essayer quand même.

    Je vous (te) tiens au courant de mes investigations
    (edit : en fait je sais pas quand je pourrais me repencher sur la question ...)

Discussions similaires

  1. Problème de cast avec l'outil de génération de requetes VS2005
    Par rabddoul dans le forum Accès aux données
    Réponses: 1
    Dernier message: 22/02/2007, 13h19
  2. [Hibernate 3] [Sybase] Requete bloquante
    Par CharlSka dans le forum Hibernate
    Réponses: 5
    Dernier message: 07/02/2007, 18h21
  3. Recherche outil de génération de Pdf
    Par yomax dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 17/02/2006, 08h58

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