not-null property references a null or transient value: com.hhu.entity.TbDepartment.dptName

我再需要提交的表单中设置了俩个s:select下拉,下拉数据都是从后台action中的方法中获取的数据
下拉的数据是通过本张表的外键id获取的,外键id和外键数据是多对一的关系就是比如多个人属于一个系
我想再选择下拉后把下拉选择的外键id保存到数据库,,,但是提交表单就报错了

org.hibernate.PropertyValueException: not-null property references a null or transient value: com.hhu.entity.TbDepartment.dptName
at org.hibernate.engine.Nullability.checkNullability(Nullability.java:95)
at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:313)
at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:204)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:144)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:117)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:535)

dptName属性为非空,你却引用了空值(NULL)或者无效的值。

去掉datNamede对应的not-null="true"

配置文件里的cascade设置为all就行了。

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有