每次在Coldfusion 9.01 ORM上执行非常简单的保存操作时,我都会遇到以下错误:
Hibernate操作异常。更新/删除的行不存在或会话包含陈旧数据。根本原因:org.hibernate.StaleStateException: 批量更新从更新中返回意外的行数[0]; 实际行数:0; 预期:1
以下代码实际上会更新数据库中的对象,但是这个错误会出现在页面底部,可能是当Coldfusion在请求结束时自动调用ormFlush()时发生的。
Hibernate操作异常。更新/删除的行不存在或会话包含陈旧数据。根本原因:org.hibernate.StaleStateException: 批量更新从更新中返回意外的行数[0]; 实际行数:0; 预期:1
以下代码实际上会更新数据库中的对象,但是这个错误会出现在页面底部,可能是当Coldfusion在请求结束时自动调用ormFlush()时发生的。
<cfscript>
myDeal = entityloadbypk('serviceCategory',1);
myDeal.setScName('Automotive1');
EntitySave(myDeal);
writedump(myDeal);
</cfscript>
这是我正在处理的对象,但当对多个对象进行此操作时,会出现相同问题。
<cfscript>
/**
* @persistent
* @table y_serviceCategories
*/
component{
property name="scID" fieldtype="id" datatype="int" generator="native";
property string scName;
property priority;
property name="serviceSubCategory" fieldtype="one-to-many" cfc="serviceSubCategory" fkcolumn="scID";
public array function getSubCategoryByPriority(){
return EntityLoad("serviceSubCategory", {scID=getscID()}, "Priority ASC");
}
}
</cfscript>
我目前的想法是,Hibernate批处理中存在一些过期的对象(与代码中的对象无关),每次Hibernate运行添加/更新批处理时都会失败。请帮忙!
{instance-name}-out.log
中,与所有其他实例控制台日志混合在一起。 - Adam Tuttle