0
我試圖保存一個JPA實體兩次,因爲我想存儲父項和修改我的文章。保存JPA實體兩次
當我創建新的文章時,我實際上想要創建父文件和父文件副本的修訂版。喜歡的東西:
Article parent = new Article();
Article revision = parent.clone();
em.persist(parent);
em.persist(revision);
但實際發生的事情是,我正在上的第二個呼叫以下異常堅持:
org.hibernate.StaleStateException:
Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
我如何可以克隆項目,使我不會得到這樣的例外?
你可以顯示你的clone()方法嗎?也許你應該重寫它,而不是爲複製的對象指定最初的ID。 – sp00m
是自動生成的主鍵還是您正在生成並設置它的主鍵。如果生成它,克隆可能已經將該ID複製到修訂版,並且這導致了問題。 – raddykrish
該鍵是自動生成的。我確保它不被複制。顯然,「克隆」方法複製了一些不希望的HIbernate屬性。 –