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 :

Intégration d'Hibernate spatiale


Sujet :

Hibernate Java

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 22
    Points : 19
    Points
    19
    Par défaut Intégration d'Hibernate spatiale
    Bonjour,
    j'ai un projet qui marche bien avec hibernate3, une BD postgres. Cependant j'ai une base postgis2.0 et quand je veux remplir cette base à partir de l'application j'ai besoin d'intégrer hibernate spatiale :
    - j'ai téléchargé hibernate-spatial-postgis-1.1 et l'ai mise dans le lib du projet, après je l'ai ajouté par le build path add jars.
    - j'ai ajouté de la même façon jts-1.13 et le driver pour postgis

    - j'ai changé dans le hibernate.cfg.xml la balise dilect et j'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    org.hibernatespatial.postgis.PostgisDialect
    quand je run un test qui marchait avant d'ajouter hibernate spatiale, j'ai l'erreur suivante :
    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
    Exception in thread "main" java.lang.ExceptionInInitializerError
    	at ehtp.intranet.jpadao.generiqueJpadao.impl.GeneriqueImpl.ajouter(GeneriqueImpl.java:24)
    	at ehtp.intranet.jpadao.Main.main(Main.java:33)
    Caused by: java.lang.RuntimeException: Problème de configuration : Dialect class not found: org.hibernatespatial.postgis.PostgisDialect.class
    	at ehtp.intranet.jpadao.commune.ConnexionHibernat.<clinit>(ConnexionHibernat.java:23)
    	... 2 more
    Caused by: org.hibernate.HibernateException: Dialect class not found: org.hibernatespatial.postgis.PostgisDialect
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:104)
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:65)
    	at org.hibernate.cfg.SettingsFactory.determineDialect(SettingsFactory.java:460)
    	at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:155)
    	at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2101)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1325)
    	at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
    	at ehtp.intranet.jpadao.commune.ConnexionHibernat.<clinit>(ConnexionHibernat.java:21)
    	... 2 more
    quand je cherche je ne trouve que de s configuration avec maven
    merci pour votre aide.

  2. #2
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 13
    Points : 18
    Points
    18
    Par défaut
    Bonjour, d'après ce message :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dialect class not found: org.hibernatespatial.postgis.PostgisDialect.class
    il parait que ton projet ne vois pas le jar que tu as ajouté.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    Merci beaucoup pour votre réponse.

    en fait j'avais pas ajouté le hibernatespatial1.1.1 jar (je croyais que hibernatespatial.postgis jar la remplace), mais maintenant il reconnais le dialect mais j'ai un autre message d'erreur
    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
    Exception in thread "main" java.lang.NoSuchMethodError: org.hibernate.type.CustomType.<init>(Lorg/hibernate/usertype/UserType;[Ljava/lang/String;)V
    	at org.hibernatespatial.postgis.PostgisDialect.<clinit>(PostgisDialect.java:51)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    	at java.lang.reflect.Constructor.newInstance(Unknown Source)
    	at java.lang.Class.newInstance0(Unknown Source)
    	at java.lang.Class.newInstance(Unknown Source)
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:101)
    	at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:65)
    	at org.hibernate.cfg.SettingsFactory.determineDialect(SettingsFactory.java:460)
    	at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:155)
    	at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2101)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1325)
    	at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
    	at ehtp.intranet.jpadao.commune.ConnexionHibernat.<clinit>(ConnexionHibernat.java:21)
    	at ehtp.intranet.jpadao.generiqueJpadao.impl.GeneriqueImpl.ajouter(GeneriqueImpl.java:24)
    	at ehtp.intranet.jpadao.Main.main(Main.java:33)

  4. #4
    Membre émérite
    Homme Profil pro
    Développeur Java/Scala
    Inscrit en
    Octobre 2007
    Messages
    1 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Scala

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 086
    Points : 2 271
    Points
    2 271
    Par défaut
    NoSuchMethodError est souvent lié à des versions incompatibles entre elles de tes librairies.

    Il faut que tu veilles à la bonne compatibilité des jars entre eux, il ne suffit pas de prendre n'importe quelle version au pif pour que ça marche. Les projets affichent souvent des matrices de compatibilité.

    En l'occurrence tu as 2 libs A et B. A pense que B est en version 2.0 mais en B est seulement en version 1.0.
    Hors A utilise une methode de B 2.0 qui n'existe pas "encore" dans ton classpath.
    La solution est donc de passer B de 1.0 a 2.0 de manière a ce que la méthode appelée par A existe bien.

    Ca peut être le problème inverse si jamais A utilise une méthode de B qui n'existe plus à partir de B 1.0 il faudra alors upgrader A ou alors rétrograder B, enfin trouver une solution compatible quoi

Discussions similaires

  1. Problème intégration struts/hibernate
    Par adrian07 dans le forum Struts 1
    Réponses: 5
    Dernier message: 13/08/2010, 13h39
  2. Intégration d'hibernate : Application ou serveur d'application
    Par DanaX dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 06/01/2010, 16h05
  3. Problème d'intégration d'hibernate sous Eclipse
    Par ali.ensi dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 27/12/2009, 21h28
  4. Intégration d'Hibernate Tools dans Eclipse 3.4.1
    Par menzlitsh dans le forum Eclipse
    Réponses: 6
    Dernier message: 23/10/2008, 10h39
  5. [Data] Intégration avec Hibernate
    Par jamalmoundir dans le forum Spring
    Réponses: 4
    Dernier message: 21/06/2007, 10h14

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