读书人

save the transient instance before

发布时间: 2012-10-30 16:13:36 作者: rapoo

save the transient instance before flushing错误解决方法
自身一对多的情况下,如果
<s:hidden name="documentCatalog.parent.id" />
这样的话 即使parent为空,但set进去的时候还是会new出一个新的parent,而这个父亲显然没有在数据库里存在,在update这个是实例时就会报错,除非你这个子类(多)设置了级联,但就算这样显然答案是不对的 你更新一个对象,不能给它增加一个父亲,解决方法如下:在更新页面里按这样写

<s:if test="null != documentCatalog.parent">
<s:hidden name="documentCatalog.parent.id" />
</s:if>

读书人网 >软件架构设计

热点推荐