Comment corriger l'erreur Hibernate "object references an unsaved transient instance" lors de la sauvegarde d'entités liées ?
Bonjour à tous ! Je suis un développeur Java débutant et j'ai rencontré un problème en travaillant avec Hibernate. J'ai deux entités : `Author` et `Book`. Un auteur peut écrire plusieurs livres, et chaque livre fait référence à un auteur (relation @ManyToOne).
Lorsque j'essaie de sauvegarder un nouveau livre avec un nouvel auteur, Hibernate lève une exception : `org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: com.example.Book.author`.
Voici mon code :
```java
@Entity
public class Author {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
@OneToMany(mappedBy = "author", cascade = CascadeType.ALL)
private List books = new ArrayList<>();
}
@Entity
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String title;
@ManyToOne
@JoinColumn(name = "author_id")