|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Oct 2010
Messaggi: 3
|
[J2EE] problemi con relazioni tra entità
Salve a tutti! posto qui per disperazione sperando che qualcuno riesca a darmi una mano! Sto trovando difficoltà nell'interpretare le relazioni tra entità (@OneToMany, @ManyToOne). Ho due entità, Utente e Feedback e vorrei che nel momento in cui un utente decide di eliminare il suo account i feedback da lui scritti possano rimanere nella base dati e pubblicati ancora.
Ho l'utente in relazione oneToMany con i Feedback (in Utente.java): @OneToMany(mappedBy="autoreJoin", fetch=FetchType.EAGER, orphanRemoval=false, cascade={CascadeType.MERGE,CascadeType.REFRESH}) private List<Feedback> feedbackRilasciati; public void setFeedbackRilasciati(List<Feedback> feed){ feedbackRilasciati=feed; } public List<Feedback> getFeedbackRilasciati(){ return feedbackRilasciati; } @OneToMany(mappedBy="riceventeJoin",fetch=FetchType.EAGER,orphanRemoval=false, cascade= {CascadeType.MERGE, CascadeType.REFRESH}) private List<Feedback> feedbackRicevuti; public void setFeedbackRicevuti(List<Feedback> feed){ feedbackRicevuti=feed; } public List<Feedback> getFeedbackRicevuti(){ return feedbackRicevuti; } e relativi Feedback in ManyToOne con l'Utente (in Feedback.java): @ManyToOne(cascade=CascadeType.REFRESH) @JoinColumn(name="AUTORE", referencedColumnName="ID", insertable=true, updatable=true, nullable=true) private Utente autoreJoin; public void setAutoreFeed(Utente ut){ autoreJoin=ut; } public Utente getAutoreFeed(){ return autoreJoin; } @ManyToOne() @JoinColumn(name="RICEVENTE", referencedColumnName="ID", insertable=true, updatable=true, nullable=true) private Utente riceventeJoin; public void setRiceventeFeed(Utente ut){ riceventeJoin=ut; } public Utente getRiceventeFeed(){ return riceventeJoin; } Dichiarate così (in Feedback.java): … ... @Basic(optional = false) @Column(name = "AUTORE", nullable = true,insertable=false,updatable=false) private int autore; @Basic(optional = false) @Column(name = "RICEVENTE", nullable = true,insertable=false,updatable=false) private int ricevente; … … nel momento in cui tento l'eliminazione dell'utente diventa impossibile perchè non posso lasciare il feedback senza riferimento! Ho provato varie opzioni in cascade e con orphanremoval ma nulla.. help! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:54.



















