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 :

Attribut de lien d'une classe A vers une classe B dans des unités de persistances différentes


Sujet :

JPA Java

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 24
    Points : 22
    Points
    22
    Par défaut Attribut de lien d'une classe A vers une classe B dans des unités de persistances différentes
    Bonjour,

    J'ai deux unités de persistances up_a et up_b, chacune réfère à une base de données à part (BD_A et BD_B). Dans up_a j'ai déclaré la classe A (table a dans la BD_A) et dans up_b j'ai déclaré la classe B (table b dans la BD_b).

    La classe A contient un attribut b de type B dont l'attribut de lien est de type OneToOne (on peut saisir n'importe quel type). Lorsque je lance le serveur une exception se lance : org.hibernate.AnnotationException: @OneToOne or @ManyToOne on pack.A.b references an unknown entity: pack.B

    Je sais bien qu'il s'agit de manque de déclaration de l'entité B dans l'up_a, mais je dois garder B dans up_b car la table b est situé dans la BD_B et A dans up_a car la table a correspondante à l'entité A est dans la base BD_A et je dois les utiliser comme ça sauf que je ne sais pas comment faire pour travailler de cette manière est utilisé deux tables chacune dans une base de données (donc déclarée dans une unité de persistance) et utiliser un attribut de lien entre les deux (de n'importe quel type OneToOne, ManyToOne, ...) ?

    Aidez moi SVP
    Merciiiiiiiii

  2. #2
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Bonjour,

    Peut on savoir quel SGBD utilises tu? il y'a véritablement un petit souci de conception là .
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 383
    Points : 468
    Points
    468
    Par défaut
    Bonjour,
    Oui, tu ne peux pas "faire semblant" qu'il existe une relation de type "One To One" dans la base (avec le contrat que celà implique) alors que ce n'est pas vrai.
    Tu ne peux donc pas les mapper avec une annotation JPA.
    Rien ne t'empêche cependant de traiter ce Entity différents comme des objets java imbriqué :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pack.B monInstanceB = getObjetBfromA(pack.A instanceA)

  4. #4
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 24
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Merci tout d'abord pour vos réponses.

    @DevServlet : PostgreSQL
    @slevy : comme ça, j'ai ignoré le concept JPA, si comme si j'utiliserais des entités java simples (POJOs) avec une gestion des bases de données manuelle !!! est ce que c'est logique ?

    Merci

  5. #5
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Citation Envoyé par lassaadpfe Voir le message
    @slevy : comme ça, j'ai ignoré le concept JPA, si comme si j'utiliserais des entités java simples (POJOs) avec une gestion des bases de données manuelle !!! est ce que c'est logique ?

    Merci
    Non non pas d'accord pour cette solution.
    J'ai déjà eu à implémenter dans plusieurs projets répondant à ton besoin des solutions qui marchent bien. Je te propose de travailler avec une seule unité de persistence, se connectant à un seul schéma (celui des 2 qui a le plus de tables, donc le schéma principal) et pour les tables du 2eme schéma, tu crées des synonymes. je viens de vérifier et sous postgres tu as aussi la notion de synonyme.Ainsi donc Hibernate aura l'impression de bosser sur un seul schéma, et tu pourras faire tes mapping JPA comme bon te semble.
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 24
    Points : 22
    Points
    22
    Par défaut
    @DevServlet : Il ne s'agit pas de manipuler deux schémas d'une base de données (cette solution marche très bien et je sais comment la configurer) mais plutôt de la gestion d'une seule entité JPA composée de d'un ensemble d'attributs éparpillés sur plusieurs bases de données.

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/08/2010, 15h02
  2. Réponses: 2
    Dernier message: 01/05/2009, 19h25
  3. Réponses: 5
    Dernier message: 22/05/2008, 15h42
  4. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 22h24
  5. [FLASH MX] Lien d'une animation Flash vers une page html
    Par tinkye_winkye dans le forum Flash
    Réponses: 10
    Dernier message: 19/01/2005, 11h11

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