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

Persistance des données Java Discussion :

Même App web pour différents clients/bases de données


Sujet :

Persistance des données Java

  1. #1
    Membre habitué Avatar de kimausoleil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2004
    Messages : 126
    Points : 135
    Points
    135
    Par défaut Même App web pour différents clients/bases de données
    Bonjour !

    En fait je ne sais pas du tout comment aborder ce sujet...

    Voilà j'ai développé une application JSF/JPA/MySql déployée sur GlassFish v3.

    Donc j'ai une url simple pour accéder à mon application http://localhost:8080/WebApp/ qui se connecte à ma base mysql de developpement dbApp.

    Avec JPA, j'ai donc mon fichier de persistence.xml classique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      <persistence-unit name="WebAppPU" transaction-type="JTA">
        <jta-data-source>jdbc/dbApp</jta-data-source>
        <shared-cache-mode>NONE</shared-cache-mode>
        <properties/>
      </persistence-unit>
    qui me permet de me connecter à mes entités via un EJB Stateless comme cela (par exemple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    @Stateless
    public class EntrepriseFacade extends AbstractFacade<Entreprise> implements EntrepriseFacadeLocal {
        @PersistenceContext(unitName = "WebAppPU")

    Maintenant, j'ai plusieurs clients pour lesquels j'ai une base de données définies dbAppClient1, dbAppClient2, ..., dbAppClientN.

    Comment faire pour "switcher" facilement entre mes différents clients tout en gardant la même application.

    Je me demandais bêtement si c'était possible d'avoir plusieurs URL (1 pour chaque client) permettant de switcher mon fichier de persistence pour les connexions au bases :


    Sinon (comme je sens que ce n'est pas possible), comment pourrais-je gérer cela sans devoir "re-compiler" un war pour chaque client et le déployer sur GlassFish...

    Merci pour vos suggestions !

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2010
    Messages : 53
    Points : 64
    Points
    64
    Par défaut
    Salut

    Si je te comprends bien tu veux, à partir de ton application web accéder à plusieurs SGBD.

    Dans ce cas il te faut déclarer dans le fichier persistance.xml d'autres persistenceUnit chacune pointant vers la base de données d'un client

  3. #3
    Membre habitué Avatar de kimausoleil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2004
    Messages : 126
    Points : 135
    Points
    135
    Par défaut
    Oui merci !
    En fait, j'ai rajouté différentes connexion dans mon fichier persistence.xml.

    Mais c'est la suite que je ne sais pas comment m'y prendre !

    J'ai décrit cette approche dans ce post : Gérer dynamiquement les "persistence-unit"

    S'il y a une autre solution, je suis preneur !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] afficher une seule fois un titre pour différents clients qui ont le même titre
    Par Prisss dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 01/12/2010, 11h52
  2. Réponses: 5
    Dernier message: 29/11/2010, 16h49
  3. Réponses: 1
    Dernier message: 12/06/2008, 17h46
  4. Réponses: 1
    Dernier message: 16/11/2007, 13h14
  5. Commet faire un lecteur enregistreur audio sur web (pour un client) ?
    Par Karys dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 13/04/2007, 10h18

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