我在“Letter.java”中有ManyToOne关系,如下所示;
@ManyToOne(fetch = FetchType.EAGER)
private Letter inResponseTo;
使用一个Letter对象多个inResponseTo相同的Letter类型的对象被关联。对于Letter对象,所有inResponseTo对象都得到更新,所以最初我在循环中合并()它们并最终持久化()将Letter对象作为如下:
private void saveCorrespondence(List<Letter> letterList,
final Claimant claimant) {
for (Letter letter : letterList) {
if(letter.getLetterCode() == null) {
if(letter.getMailType() == MailType.OUTGOING) {
letter.setLetterCode(LetterCode.findByCode("701"));
} else if(letter.getMailType() == MailType.INCOMING) {
letter.setLetterCode(LetterCode.findByCode("109"));
}
}
letter.setClaimant(claimant);
if (letter.getId() != null) {
letter = letter.merge();
letter.flush();
}
letter.persist();//Here in this line i am getting an error.
}
}
注意:-Claimant和Letter有OneToMany关系 虽然持续将错误视为StaleObjectStateException:Row被同一行中的另一个事务JPA更新或删除。如何解决这个问题请帮助我。