Hibernate insérer cascade de ne pas l'insertion de clé étrangère

J'ai deux entités:

@Entity
public class File
.......
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@OneToMany(fetch=FetchType.LAZY, mappedBy="file", cascade=CascadeType.ALL)
private List<Tag> tags;
.......
OTHER PROPERTIES
.......

@Entity
public class Tag
.......
@Id @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@ManyToOne
@JoinColumn(name="file_id")
private File file;
@Column
private String tag;
.......
OTHER PROPERTIES
.......

Je suis en train de les insérer dans le Fichier (et par la suite Tag) en procédant comme suit:

File file = new File();
Tag tag = new Tag();
tag.setTag("tag1");
Tag2 tag2 = new Tag();
tag2.setTag("tag2");
List<Tag> tags = new ArrayList<Tag>();
tags.add(tag);
tags.add(tag2);
file.setTags(tags);
---Add other file attributes here---

Je suis ensuite d'insérer le fichier dans mon DAO à l'aide de:

sessionFactory.getCurrentSession().saveOrUpdate(file); 

Dans mes logs, je vois un insert dans mon "fichier" table et 2 insère dans ma table tag, toutefois, la clé étrangère dans ma balise table des points à ma table de fichiers (file_id) est NULLE.

Que pourrais-je bien fait de mal?

OriginalL'auteur El Guapo | 2010-12-21