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 :

[EJB3]Problème mapping @ManyToOne avec ForeignKey composite


Sujet :

JPA Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2006
    Messages : 64
    Points : 85
    Points
    85
    Par défaut [EJB3]Problème mapping @ManyToOne avec ForeignKey composite
    Bonjour,

    j'essaye de mettre en place les mappings entre mes entities et suis actuellement bloqué sur la clé composite d'une de mes entity.

    Je souhaiterai avoir les tables suivantes:

    MyEntity(id1_fk,id2_fk,...)
    Entity1(id,...)
    Entity2(id,...)




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    @Embeddable
    public class MyCompositeId implements Serializable {
     
        @Id
        @ManyToOne
        @JoinColumn(name = "id1_fk")
        private Entity1 o1;
        @Id
        @ManyToOne
        @JoinColumn(name = "id2_fk")
        private Entity2 o2;
     
     //...
    }
     
    @Entity
    @IdClass(MyCompositeId.class)
    public class MyEntity implements Serializable {
     
        private static final long serialVersionUID = 1L;
     
     
        @EmbeddedId
        MyCompositeId compId;
     
     //...
    mais j'obtient une erreur du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    The mapping [o1] from the embedded ID class [class com.MyCompositeId] is an invalid mapping for this class. An embeddable class that is used with an embedded ID specification (attribute [MyCompositeId] from
    J'ai également essayé de modifier les annotations en m'inspirant de http://docs.jboss.org/hibernate/stab...ml/entity.html mais je me retrouve toujours face à une erreur.

    Il s'agit probablement d'un problème tout bête de compréhension de ma part vu que je débute avec les EJB.


    Merci d'avance

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2006
    Messages : 64
    Points : 85
    Points
    85
    Par défaut
    Hello,

    je réponse à ma propre question en me basant sur ce que j'ai pu trouver dans mes recherches:
    Les Spec de JPA n'autorisent pas ce que je faire, même si il se peut que certains JPA-providers l'autorisent:
    http://en.wikibooks.org/wiki/Java_Pe...tional_Columns

    J'avais essayé de m'inspirer de la similarité avec Hibernate mais sans succès:
    http://java-aap.blogspot.com/2006/04...composite.html


    Comme expliqué sur wikibooks, la solution composite va duppliquer les clés, pour ainsi avoir 2 clés pour l'id, et 2 dupplicats pour les Foreign Keys. Cette solution composite, à moins d'avoir un réel intérêt à l'utiliser, peut très bien être remplacé par un simple Id pour la classe en question (MyEntity) en conservant les deux foreign keys, ce qui permet de gagner un champ.

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

Discussions similaires

  1. [Debutant] Problème Mapping ManyToOne
    Par Psymon dans le forum Hibernate
    Réponses: 0
    Dernier message: 11/12/2010, 14h48
  2. Problème avec les compositions
    Par romaintaz dans le forum JSF
    Réponses: 2
    Dernier message: 24/05/2007, 17h51
  3. [EJB3] problème d'intéraction avec la BDD
    Par toomsounet dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 15/03/2007, 00h08
  4. [EJB3] problème de fetch=lazy avec ejb3
    Par pbdlpc dans le forum JPA
    Réponses: 2
    Dernier message: 16/01/2007, 21h52
  5. mapping EJB3 sur base HSQL avec plusieurs schémas
    Par xv-mnt dans le forum Hibernate
    Réponses: 1
    Dernier message: 26/09/2006, 16h58

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