Как обновить список объектов JDO - PullRequest
1 голос
/ 01 февраля 2020

Итак, я пытаюсь обновить объект с именем Alumno, это класс:

 public class Alumno extends Persona {

 private Alumno alumno;


 private List<String> telefonos;


 private List<Asignatura> asignaturas;

А это класс "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 Объект 'Modelo.Asignatura.Asignatura #' PGL '' принадлежит другому EntityManager [Asignatura: 'PGL'] (ошибка 634)

Есть идеи, как это решить? Большое спасибо.

1 Ответ

0 голосов
/ 01 февраля 2020

Это сообщение об ошибке указывает на смешивание объектов сущностей различных экземпляров EntityManager.

Каждый экземпляр EntityManager представляет отдельное соединение с базой данных с отдельным и изолированным «контекстом постоянства», который представляет собой набор объекты в памяти, которые представляют объекты сущностей в базе данных.

Если вы извлекаете объект сущности в одном EntityManager, вам не разрешается связывать его с объектами сущности в другом экземпляре EntityManager (например, используя ссылки из другого объекта). объект сущности другого EntityManager).

...