Hibernate:非空属性引用了空值或瞬态值。

4
我有两个类:MsgTask,它们是1对1的关系。
如果我尝试保存Msg实例而没有为其设置Task实例,则会出现以下情况。
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>

提前感谢您!

1个回答

5

尝试将您的映射修改为以下内容,

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

问题可能是因为在列定义标签中有一个not-null="true"。阅读此处了解更多关于Hibernate映射的内容。

感谢您的回答。如果是一对一的情况,我该怎么办?如何修改映射? - bunnyjesse112
在这里阅读有关一对一映射的内容。 - ManuPK
似乎在One-2-One中,没有非空选项。 - bunnyjesse112

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接