2011-02-06 136 views
0

我工作的地方,我们使用Hibernate进行数据库持久对象web应用。 这里的问题是 我们将得到来自第三方的XML,我们需要到database.we坚持这个数据可以在稍后的时间获得更新XML同一实体,所以我们需要更新的所有记录,但由于我们得到更新来自第三方的XML无法为我们提供该实体的UUID。 因此,我们使用以下方法 检查对象是否已经在数据库中(XML具有唯一值作为entityid) 如果对象存在删除记录并将其保存为新对象(替换模式种类) if object不在数据库中简单保存。休眠StalestateException问题

现在我们在这里面对严峻的issue.if我保存对象比在第二次调用我们发送包含更新的记录 休眠对象更新与保存在前面transcation对象这个对象UUID的更新请求。

现在它能够删除的对象,但是,当我们试图保存对象时,它抛出stalestate例外,因为Hibernate已经设置此对象的UUID。

我们试图用更新的方法,但这种将工作,直到环境是相同的,如果在后一阶段,我们尝试更新的对象比它会抱怨标识属性,因为在这种情况下,这将是空的。

任何一个可以帮助我如何实现这一目标,因为它似乎与上下文的问题和休眠内部会话管理。

在此先感谢 Umesh制作

回答

0

问题解决了! 它与弹簧配置有关,休眠工作正常。