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 :

Tâche hbm2ddl de hibernate3-maven-plugin et base Derby embarquée


Sujet :

Hibernate Java

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 15
    Points : 18
    Points
    18
    Par défaut Tâche hbm2ddl de hibernate3-maven-plugin et base Derby embarquée
    Bonjour,

    J'essaie d'automatiser le lancement de tests unitaires sur un projet web. Pour ça, j'aimerais scripter ma base principale, la recréer sur une base embarquée et lancer mes tests unitaires sur cette base de test.

    Pour la descente de la base, j'utilise la tâche hbm2ddl du plugin hibernate3-maven-plugin qui me régénère bien la base sur une base derby en mode embedded.

    Par contre, je n'arrive pas à accéder à la base depuis mes tests. Quand j'essaie de récupérer la connexion, j'ai une exception comme quoi la base est déjà démarrée. Suite recherches, une base derby embarquée ne peut être accédée en même temps depuis 2 JVM différentes. Apparemment la tâche hibernate ferme mal la connexion... (quand je lance les tests en désactivant la tâche de création de la base tout se passe bien).

    J'ai essayé de fermer la connexion au début de mes tests unitaires en passant en attribut de connexion l'attribut shutdown=true (une fois sur la base juste créée et également sur le système derby en supprimant le nom de la base de l'url jdbc), pas mieux.

    J'ai aussi essayé de fermer la connexion via sql-maven-plugin toujours en utilisant l'attribut de connexion shutdown, pas mieux.

    Pour résoudre les problèmes d'accès concurrent sur une base embarquée, il y a possibilité de passer par un serveur Derby Network Server qui gère les accès à la base et permet les accès concurrents. Via exec-maven-plugin goal exec, j'arrive bien à lancer le serveur qui me rend le prompt et bloque l'exécution de maven... D'après la doc l'exec est sensé se faire dans un process différent...



    Je sèche, je pense que ce que j'essaie de faire est assez classique et je vois pas comment m'en sortir. Quelqu'un a déjà rencontré ce genre de problème et/ou sait comment lancer un programme java en démon sans bloquer l'exec de maven ?

    Merci

    Jacques

  2. #2
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 15
    Points : 18
    Points
    18
    Par défaut
    Ca ne résoud pas le sujet, mais je suis passé à HSQLDB en mode embarqué et j'ai eu aucun soucis.

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/08/2010, 17h09
  2. Réponses: 0
    Dernier message: 01/07/2010, 10h06
  3. Réponses: 10
    Dernier message: 24/04/2009, 10h40
  4. [exec-maven-plugin] Ne trouve pas l'éxecutable java
    Par KooKoolen dans le forum Maven
    Réponses: 1
    Dernier message: 19/12/2006, 13h54
  5. MAVEN plugins....error MOJO
    Par lipczynski dans le forum Maven
    Réponses: 2
    Dernier message: 31/03/2006, 15h47

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