我正在尝试更新实体列表。实际上我必须两次更新每个实体。首先我需要设置一些状态,然后执行一些操作来生成 pdf 报告,然后再次更新该实体的状态。我得到了这个 OptimisticLockException。此表未在系统中的其他任何地方更新。我不知道我在做什么错。
public void procesarImpresiones() {
Query q = em.createNamedQuery("Gapendte.selectByState");
for (Object p:q.getResultList()){
Gapendte pend = (Gapendte) em.merge(p);
pend.setKy1("2");
em.flush();
try{
//print something to pdf
...
pend.setKy1("9");
}catch (Exception e) {
pend.setKy1("7");
}
em.flush();
}
}
谢谢你的帮助!