Коллекция с Cascade = "All-Delete-Orphan" больше не была ссылаться на владение Entity Exance: Proceurestep.substepsJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Коллекция с Cascade = "All-Delete-Orphan" больше не была ссылаться на владение Entity Exance: Proceurestep.substeps

Сообщение Anonymous »

My Java-код вызывает следующую ошибку:
«Коллекция с Cascade = 'All-Delete-Orphan' больше не ссылалась на экземпляр собственности сущности: br.com.unika.pathdetail.entity.procedurestep.substeps." < /p>
это происходит, когда пытается спасти эл. Соборы сбора не изменяются и не переназначены в коде Java; Это получено как есть и напрямую передано, чтобы сохранить. Несмотря на это, Hibernate по -прежнему запускает эту ошибку, вероятно, интерпретируя, что исходная ссылка на коллекцию была заменена или потеряна.@Entity
@Table(name = "procedure_step", indexes = {
@Index(name = "idx_pstep_code", columnList = "code, procedure_id"),
})
@Data
public class ProcedureStep extends AbstractEntity {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;

@AuditableObject(mapBy = "id")
@ManyToOne(fetch = FetchType.EAGER, optional = false)
@JoinColumn(name = "account_id", updatable = false)
private Account account;

@AuditableObject(mapBy = "name")
@ManyToOne(fetch = FetchType.LAZY, optional = false)
@JoinColumn(name = "procedure_id", updatable = false)
private Procedure procedure;

@AuditableObject(mapBy = "name")
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "parent_step_id")
private ProcedureStep parentStep;

// ex: 1.1.1
@Auditable
@Column(nullable = false, length = 20)
private String code;

@Auditable
@Column(name = "name", nullable = false)
private String name;

@Temporal(TemporalType.TIMESTAMP)
@Column(nullable = false, name = "created_date", updatable=false)
private Date createdDate = new Date();

@OneToMany(mappedBy = "step", cascade = CascadeType.ALL, orphanRemoval = true)
private List parameters = new ArrayList();

@OneToMany(mappedBy = "parentStep", cascade = CascadeType.ALL, orphanRemoval = true)
private List subSteps = new ArrayList();

< /code>
@Transactional(rollbackFor = Exception.class)
public List saveMany(List dtoList) throws BusinessRuleException {

Set newObjs = new HashSet();

// Convert all elements to DTO
List toSave = dtoList.stream().map(ProcedureStepDTO::toEntity).toList();
for (ProcedureStep entity : toSave) {
validateUpdatePermission(entity);
if(entity.getId() == null) {
newObjs.add(entity.getUuidCheck());
beforePersist(entity);
} else {
beforeSave(entity);
}
commonValidations(entity);
}

List saved = repository.saveAll(toSave);
for (ProcedureStep s : saved) {
if(newObjs.contains(s.getUuidCheck())) {
this.afterPersist(s);
} else {
this.afterSave(s);
}
}
return saved.stream().map(ProcedureStep::toDTO).toList();
}


Подробнее здесь: https://stackoverflow.com/questions/797 ... -by-the-ow
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»