如何更新对象列表 JDO
How to update object list JDO
所以我正在尝试更新一个名为 Alumno 的对象,这是 class:
public class Alumno extends Persona {
private Alumno alumno;
private List<String> telefonos;
private List<Asignatura> asignaturas;
这是class"Asignatura"
public class Asignatura {
private String alias;
private String nombre;
private Long curso;
private Profesor profesor;
private List<Alumno> alumnos;
当我尝试更新对象时 "Alumno" 我得到这个错误:
[ObjectDB 2.8.1] javax.jdo.JDOUserException
Object 'Modelo.Asignatura.Asignatura#'PGL'' belongs to another EntityManager [Asignatura:'PGL'] (error 634)
知道如何解决这个问题吗?非常感谢。
此错误消息表明混合了不同 EntityManager
实例的实体对象。
每个 EntityManager
实例代表一个单独的数据库连接,具有单独和隔离的 "persistence context",这是内存中的一组对象,代表数据库中的实体对象。
如果您在一个 EntityManager
中检索实体对象,则不允许 link 它到另一个 EntityManager
实例中的实体对象(例如,使用另一个实体对象的引用) EntityManager
).
所以我正在尝试更新一个名为 Alumno 的对象,这是 class:
public class Alumno extends Persona {
private Alumno alumno;
private List<String> telefonos;
private List<Asignatura> asignaturas;
这是class"Asignatura"
public class Asignatura {
private String alias;
private String nombre;
private Long curso;
private Profesor profesor;
private List<Alumno> alumnos;
当我尝试更新对象时 "Alumno" 我得到这个错误:
[ObjectDB 2.8.1] javax.jdo.JDOUserException Object 'Modelo.Asignatura.Asignatura#'PGL'' belongs to another EntityManager [Asignatura:'PGL'] (error 634)
知道如何解决这个问题吗?非常感谢。
此错误消息表明混合了不同 EntityManager
实例的实体对象。
每个 EntityManager
实例代表一个单独的数据库连接,具有单独和隔离的 "persistence context",这是内存中的一组对象,代表数据库中的实体对象。
如果您在一个 EntityManager
中检索实体对象,则不允许 link 它到另一个 EntityManager
实例中的实体对象(例如,使用另一个实体对象的引用) EntityManager
).