1

我正在使用 Spring Forms 将对象绑定到 HTML 表单。该对象已存在于我的数据库中,因此现在正在对其进行编辑。

问题是,当我尝试通过 AJAX 或将整页请求更新回我正在获取的服务器时org.hibernate.StaleObjectStateException

我已经尝试过context.currentSession().saveOrUpdate(instance)DAO context.currentSession().update(instance),但都没有工作。

似乎是休眠version列导致了这个问题,因为当我将版本列添加到弹簧绑定时。

<sf:hidden id="myobject-id" path="myobject.version"/>

但是,如果我通过 AJAX 保存,然后通过完全保存重新加载再次保存,我可以保存,我会再次看到 StaleObjectStateException,因为版本已通过 AJAX 保存再次更改(与现在表单中的版本不同)。

无论如何,我不想将版本列绑定到表单,必须有一种更优雅的方式来做到这一点。

我究竟做错了什么?

4

0 回答 0