我升級到冬眠3.6.0.FINAL後得到的錯誤,但它與3.3.2.GAhibernate.TransientObjectException:對象引用一個未保存的瞬態的實例保存的瞬態的實例前沖洗,後休眠升級
工作我的問題類似於https://forum.hibernate.org/viewtopic.php?p=2452617
在這種情況下,他們已經設置cascade =「all」來解決問題。
但在我的情況下,我不想更新引用的實體。我沒有bi直系,關係,它只是一個多對一的。大多數類似的問題貼在這裏,建議做一個級聯,但在我的情況下,它不想級聯。
我映射
<class name="org.hmil.ams.com.model.MyUserDetails" table="CMUPMST_TB">
<id name="username" column="UPMST_USER_NAME" type="java.lang.String"
unsaved-value="0">
<generator class="assigned" />
</id>
<property name="password" column="UPMST_USER_PWD" type="java.lang.String"
not-null="true" />
<property name="UPMST_ROLE_ID" type="long" not-null="true" />
<many-to-one name="UPMST_ROLE" fetch="join" cascade="none"
insert="false" update="false" class="org.hmil.ams.setup.model.CodeMst">
<column name="UPMST_ROLE_ID" />
</many-to-one>
</class>
我使用Spring BlazeDS的/柔性,我的對象分離。現在,當我嘗試保存新創建的MyUserDetails實體時,它說有CodeMst的暫時實例,(我沒有更新實體,但可能是BlazeDS,而它反序列化新創建的MyUserDetail,它正在實例化引用的CodeMst實體,空值,這可能會導致問題,但相同的代碼在升級前工作) 任何幫助解決這個問題的讚賞。