У меня есть веб-приложение, созданное с помощью Spring Boot, связанное с базой данных PostgreSql, проект посвящен учебному заведению и управлению студентами и выставлению счетов ...
Я генерирую все счета-фактуры вручную.Я обычно добавляю первый cuota (счет-фактуру), но когда я хочу создать второе, у меня возникает эта проблема:
java.lang.IllegalStateException: Multiple representations of the same entity [com.codeboros.app.entity.Cuota#1] are being merged. Detached: [com.codeboros.app.entity.Cuota@1788e1df]; Managed: [com.codeboros.app.entity.Cuota@2697e3fc]
У меня есть следующие объекты:
@Entity
@Table(name="ALUMNOS")
public class Alumno implements Serializable {
@OneToMany(mappedBy="alumno", cascade= {CascadeType.DETACH,CascadeType.PERSIST,CascadeType.DETACH,CascadeType.REMOVE,CascadeType.REFRESH,CascadeType.MERGE}, fetch=FetchType.LAZY)
@NotFound(action = NotFoundAction.IGNORE)
@JsonIgnore
private List<Cuota> cuotas;
}
@Entity
@DiscriminatorValue(value="Cuota")
public class Cuota extends Factura implements Serializable {
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="alumno_cod")
@NotFound(action = NotFoundAction.IGNORE)
Alumno alumno;
}
ИAlumnoController
@PostMapping("/alumnoGenCuota/{id}")
public String GenCuota(@PathVariable Long id, Cuota cuota) {
Alumno alumno = alumnoService.get(id);
cuota.setAlumno(alumno);
cuota.setMonto(alumno.getCurso().getCuota());
cuota.setDetalle(alumno.getCurso().getNombre()+": $"+alumno.getCurso().getCuota()); //detalle
alumno.AgregarCuota(cuota);
alumnoService.save(alumno);
return "redirect:/alumnocuotas/"+id;
}
Я пытался удалить CascadeType.MERGE, но не сохранял новости. Cuotas