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

JPA Java Discussion :

Intégrité des données après suppression par une application tiers


Sujet :

JPA Java

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Intégrité des données après suppression par une application tiers
    Bonjour,

    je n'arrive pas à résoudre un problème d'intégrité de données.
    J'ai une application EJB3 se basant sur une base de données Mysql.
    J'ai une application Java qui se base sur l'application EJB3 pour la récupération des données ainsi que leur traitement (simple CRUD).
    Aucun problème pour faire fonctionner mon système.

    Le problème vient du fait que d'autres applications utilisent cette base de données et si l'une d'elle vient à ajouter / modifier / supprimer des informations, mon application EJB3 ne les détecte pas.
    Je suis obliger de redéployer mon projet EJB pour qu'il prenne "conscience" des mises à jour effectuées.

    Alors j'aimerais savoir comment forcer la mise à jour du "contexte" de l'entity manager pour que celui prenne en charge les modifications de la base de données faites par une application tiers ?

    Je vous remercie, bonne journée.

  2. #2
    Membre à l'essai
    Inscrit en
    Février 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    tu utilise des Stateless bean?
    le EntityManager est injecté par annotation dans ces bean?
    tu utilise quel provider jpa?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    oui j'utilise des stateless bean, l'entity manager et injecté par annotation et j'utilise toplink.

  4. #4
    Membre à l'essai
    Inscrit en
    Février 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    tu peux essayer de disaactiver le cache de la persistence context a travers la propriete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <property name="toplink.cache.shared.default" value="false"/>
    ou encore utiliser le pessimistic lock pour etre sur qu'une query ejb retourne des donnees fraiches. propriete "toplink.pessimistic-lock"

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Je te remercie pour ces infos, je ferais des tests dès que je peux et je vous direz si ça a marché.

    Merci, bonne journée.

  6. #6
    Membre habitué Avatar de jean.2edi
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 106
    Points : 131
    Points
    131
    Par défaut
    C'est un problème d'architecture surtout : les autres applis devraient s'adresser à la même couche de persistance que ton appli principale et non pas à la base de données directement !

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 142
    Points : 153
    Points
    153
    Par défaut
    Citation Envoyé par jean.2edi Voir le message
    C'est un problème d'architecture surtout : les autres applis devraient s'adresser à la même couche de persistance que ton appli principale et non pas à la base de données directement !
    Bof... Je suis pas trop d'accord.
    Avec des clients lourds, chacun à sa propre instance pour gérer les DAOs.

    Pour moi, la BDD est la référence. A chaque applications de considérer que la BDD est plus à jour que tout le reste.

    Pour moi, c'est à l'EntityManager de se synchroniser avec la base.

Discussions similaires

  1. [phpMyAdmin] Je ne peux plus insérer des données après avoir renommé une table!
    Par yvessavoie dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 14/02/2014, 16h22
  2. [eZ Publish] manipuler eZ Publish par une application tiers
    Par madfu dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 10/09/2010, 14h52
  3. Réponses: 2
    Dernier message: 27/05/2008, 16h28
  4. récupérer des données après suppression
    Par Mimosa777 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 31/03/2008, 20h31

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