Réutilisation de collections dans différentes entités de même type
Bonjour,
je travaille sur hibernate et je rencontre l'exception suivante
Code:
1 2
|
org.springframework.orm.hibernate4.HibernateSystemException: Found shared references to a collection |
Effectivement je cherche à mettre dans une collection de mon entité la même collection qu'une autre entité du même type. Je souhaite vraiment que ce soit les mêmes données et les mêmes id. Concrêtement, je souhaite pointer sur les mêmes données en base et donc sur les mêmes données en cache. Hors je ne sais pas comment contourner cette exception. Dès que je fais un save de mon entité j'obtiens cette exception. Comment faire pour que deux entités puisse pointer sur la même collection ?
Pour information, voici à quoi ressemble l'entité en question :
Code:
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
|
@Entity
@Table(name="T_ATTRIBUT")
public class Attribut implements Serializable{
private static final long serialVersionUID = -2364367529355309198L;
private long id;
private Set<LocString> label = new HashSet<LocString>(0);
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="ID")
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
@ManyToMany(fetch=FetchType.EAGER, cascade=CascadeType.ALL)
public Set<LocString> getLabel() {
return label;
}
public void setLabel(Set<LocString> label) {
this.label = label;
}
... |
et concernant l'entité locString :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
public class LocString implements Serializable {
private static final long serialVersionUID = -3384318618274464353L;
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="ID")
private long id;
@Column(name="LOCALE")
private String locale;
@Column(name="VALUE")
private String value;
... |
Merci d'avance pour votre aide !