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 :

Java problème de cascade


Sujet :

Persistance des données Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Par défaut Java problème de cascade
    Bonjour,

    Je réalise un projet de boite mail et je rencontre un problème au niveau de la persistance de mes objets :

    Box (classe mère)
    ------>Mailbox(classe fille)
    ------>Newsbox(classe fille)

    Message(classe)

    En gros je réalise une liaison avec des entités :

    Une box est soi une newsbox(box de groupe) ou mailbox(box de personne), chaque mailbox peut avoir plusieurs message.

    Classe Box

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    @Entity
    @Table
    public class Box implements IBox, Serializable{
     
     
     
    	@PersistenceContext(unitName="pu1")
    	private EntityManager em;
     
    	@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
    	int id;
    	String name;
     
    	@OneToMany(cascade = ALL, mappedBy="box",targetEntity=Message.class)
    	private Collection<Message> messages = new ArrayList<Message>();
     	public Collection<Message> getMessages() {
    		return messages;
    	}
    	public void setMessages(Collection<Message> messages) {
    		this.messages = messages;
    	}
     
     
    	public int getId() {
    		return id;
    	}
     
     
    	public void setId(int id) {
    		this.id = id;
    	}
     
     
    	public String getName() {
    		return name;
    	}
     
     
    	public void setName(String name) {
    		this.name = name;
    	}

    Classe Message


    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
     
    @Stateless(name="box/Message")
    @Entity
    @Table
    public class Message implements Serializable {
    	@PersistenceContext(unitName="pu1")
    	private EntityManager em;
    	@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
    	int id;
    	String pfrom;
    	String pto;
    	String date;
    	String subject;
    	String body;
    	boolean pread;
     
    	@ManyToOne
    	@JoinColumn(name="BOX_ID",nullable=false)
    	private Box box;
    	public Box getBox() {
    		return box;
    	}
    	public void setBox(Box box) {
    		this.box = box;
    	}
     
     
     
     
    	public int getId() {
    		return id;
    	}
     
    	public void setId(int id) {
    		this.id = id;
    	}
     
    	public String getPfrom() {
    		return pfrom;
    	}
     
    	public void setPfrom(String pfrom) {
    		this.pfrom = pfrom;
    	}
     
    	public String getPto() {
    		return pto;
    	}
     
    	public void setPto(String pto) {
    		this.pto = pto;
    	}
     
    	public String getDate() {
    		return date;
    	}
     
    	public void setDate(String date) {
    		this.date = date;
    	}
     
    	public String getSubject() {
    		return subject;
    	}
     
    	public void setSubject(String subject) {
    		this.subject = subject;
    	}
     
    	public String getBody() {
    		return body;
    	}
     
    	public void setBody(String body) {
    		this.body = body;
    	}
     
    	public boolean isPread() {
    		return pread;
    	}
     
    	public void setPread(boolean pread) {
    		this.pread = pread;
    	}
    Classe Mailbox


    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
     
    @Stateless(name="box/MailBox")
    @Entity
    @Table
    public class MailBox extends Box implements IMailBox, Serializable {
     
     
    	@PersistenceContext(unitName="pu1")
    	private EntityManager em;
     
     
    	public MailBox() {
    		super();
    		// TODO Auto-generated constructor stub
    	}
    La table se met bien en place mais par contre lorsque que je crée un message le champ ID_BOX(clé étrangère) dans la table message se met NULL
    http://www.imagup.com/data/1114091298.html


    Merci d'avance de votre aide

  2. #2
    Membre éclairé
    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
    Par défaut
    salut,

    avant de persist le message as-tu associe le Box (message.setBox(box))?

Discussions similaires

  1. [DOM][Java] Problème avec le retour de getNodeName()
    Par anutka dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 11/04/2012, 21h38
  2. [SAX] Java : problème de lecture d'XML avec SAX
    Par TheReturnOfMuton dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 22/06/2006, 18h26
  3. [Java] Problème ClassPath
    Par nsanabi dans le forum Jasper
    Réponses: 8
    Dernier message: 02/11/2005, 18h44
  4. [JAVA] Problème supression noeud d'un document XML
    Par vero59 dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/08/2005, 16h12
  5. [Eclipse][Java]Problème de compilation sur CTRL+S
    Par ZeKiD dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 27/05/2004, 11h49

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