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 :

Differents objets avec le même ID


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Mucho
    Inscrit en
    Décembre 2005
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 221
    Par défaut Differents objets avec le même ID
    Salut,

    j'ai un petit problème avec le chargement tardif :

    j'ai une instance (en base) d'une classe A avec une liaison (lazy) vers une instance de classe P (aussi en base)

    j'ai aussi une instance (en base) d'une classe B avec une liaison (lazy) vers cette même instance de la classe P (toujours en base)

    lorsque je charge un élément A et qu'il charge l'instance de P tout va bien.

    lorsque je charge un élément B et qu'il charge l'instance de P j'obtiens une erreur du type NonUniqueObjectException

    Je ne sais pas comment faire pour que ma classe B s'associe l'instance de P qui a déjà été chargée par A plutôt de de charger une nouvelle instance.

  2. #2
    Membre émérite Avatar de Gardyen
    Homme Profil pro
    Bio informaticien
    Inscrit en
    Août 2005
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bio informaticien

    Informations forums :
    Inscription : Août 2005
    Messages : 637
    Par défaut
    on peut voir le code ou tu fais appel a tes objets ?

  3. #3
    Membre confirmé Avatar de Mucho
    Inscrit en
    Décembre 2005
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 221
    Par défaut
    :/ en fait entre la définition des classes A, B, C et leurs parents, leurs fichiers de mapping et les différentes méthodes dans lesquels ils sont chargés ça fait un bon nombre de fichiers... si tu veux plus de précisions, peux-tu me dire ce qui t'intéresse ?

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 277
    Par défaut
    Ca vient peut être du fait que si tu essaies de charger ton A puis ton B, ton P va se retrouver deux fois dans la session Hibernate, ce qui n'est pas possible.
    Donc soit tu utilises une autre session entre les 2 chargements, soit tu enlèves ton objet A de la session une fois chargé, par un evict par exemple, soit tu vides complètement la session par clear...

  5. #5
    Membre confirmé Avatar de Mucho
    Inscrit en
    Décembre 2005
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 221
    Par défaut
    Effectivement mais puisque c'est le même objet j'aimerai que les deux instance (une instance de A et une de B) partagent la même instance de P.
    La session Hibernate est elle capable de me renvoyer un objet déjà chargé ?

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 277
    Par défaut
    Oui mais si tes données sont chargées, quel est l'intérêt de les garder en session en même temps ?

    La session te renvoie un objet déjà chargé, par la méthode get, qui regarde déjà s'il est en session, sinon regarde en base de données.

Discussions similaires

  1. Objets avec les mêmes composants
    Par meryazer dans le forum SQL
    Réponses: 12
    Dernier message: 13/05/2011, 12h02
  2. Réponses: 2
    Dernier message: 28/12/2010, 15h51
  3. Réponses: 4
    Dernier message: 30/11/2010, 22h37
  4. Deux objets avec le même identifiant pour une session
    Par nicolas_isi dans le forum Hibernate
    Réponses: 6
    Dernier message: 16/07/2009, 09h11
  5. Méthode avec argument objet de la même classe
    Par Black-Ghost dans le forum C++
    Réponses: 5
    Dernier message: 30/01/2006, 10h01

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