Tengo problemas en la persistencia del campo OneToMany. Estas son dos clases simplificadas que estoy usando para hacer la prueba.Jpa OneToMany no persistir hijo
public class User implements Serializable {
...
private String name;
...
@OneToMany(mappedBy = "user", cascade = CascadeType.ALL)
private List<PhoneNumber> phoneNumbers;
...
}
public class PhoneNumber implements Serializable {
...
private String phoneNumber;
...
@ManyToOne()
private User user;
...
}
por lo que quiero hacer esto:
User u = new User();
PhoneNumber p = new PhoneNumber();
u.setName("Alan");
u.getPhoneNumbers.add(p);
Pero cuando persisto el usuario u phoneNumber el niño no se conserva automáticamente. De manera OO, solo necesito hacer una composición de uno a muchos.
Uso EclipseLink.
Muchas gracias a todos por sus sugerencias.
Es un poco extraño - un ejemplo funciona bien en mi caso (EclipseLink). Al final, solo hace que EntityManager # persist (u)? ¿Cómo sabe que el valor no se mantiene? ¿Verificó en la base de datos o consultó a la entidad de alguna manera? ¿Intentó enjuagar el EntityManager? –