2011-11-24 62 views
4

我有2個類:MsgTask是1對1。休眠:非空屬性引用空或瞬態值

如果我嘗試保存Msg實例而不設置任務實例爲它。

org.hibernate.PropertyValueException: not-null property references a null or transient value: entity3.Msg.task 

如何啓用保存消息沒有任務?我有這映射文件的消息,但它沒有幫助

<many-to-one class="entity3.Task" fetch="select" name="task" not-null="false"> 
    <column name="TaskID" not-null="true" unique="true"/> 
</many-to-one> 

在此先感謝!

回答

5

嘗試如下修改您的映射,

<many-to-one class="entity3.Task" fetch="select" name="task" 
column="TaskID" not-null="false"> </many-to-one> 

這個問題可能是因爲您在column定義標籤具有not-null="true"。有關hibernate映射的更多信息,請參閱here

+0

謝謝你的回答。如果是一對一的話我該怎麼辦?我如何修改映射? – bunnyjesse112

+0

請閱讀[一對一映射](http://docs.jboss.org/hibernate/core/3.3/reference/en/html/mapping.html#mapping-declaration-onetoone)。 – ManuPK

+0

它似乎是一個2,沒有非null選項。 – bunnyjesse112

相關問題