I am having a hierarchical object(managed) with an Array collection.
Add works fine but deleting items (one at a time) from the collection sometimes
causes an internal exception (only printed with <mx:TraceTarget/>. Most likely
happens after first successful delete.
The item disappears from the local collection but LCDS has no knowledge of it
and hence autoCommit remains "FALSE" and change can't be rolled back.
exception given in stacktrace:
RangeError: Index '2' specified is out of bounds.
RangeError: Index '2' specified is out of bounds.
at
mx.collections::ListCollectionView/getItemAt()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:422]
at
mx.data::DataMessageCache/logUpdate()[C:\depot\flex\branches\enterprise_corfu_rc\frameworks\projects\data\src\mx\data\DataMessageCache.as:682]
at
mx.data::DataStore/http://www.adobe.com/2006/flex/mx/internal::logUpdate()[C:\depot\flex\branches\enterprise_corfu_rc\frameworks\projects\data\src\mx\data\DataStore.as:2499]
at
mx.data::ConcreteDataService/itemUpdateHandler()[C:\depot\flex\branches\enterprise_corfu_rc\frameworks\projects\data\src\mx\data\ConcreteDataService.as:6118]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at
com.thed.vo::CycleVO/dispatchEvent()[C:\thed\trunk\web\src\main\client\com\thed\vo\CycleVO.as:41]
at
<anonymous>()[C:\depot\flex\branches\enterprise_corfu_rc\frameworks\projects\data\src\mx\data\utils\Managed.as:924]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at
mx.collections::ArrayList/internalDispatchEvent()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\collections\ArrayList.as:524]
at
mx.collections::ArrayList/removeItemAt()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\collections\ArrayList.as:363]
at
mx.collections::ListCollectionView/removeItemAt()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:601]
at
com.thed.controls.views.Scheduling::TCRScheduling/deletePhase()[C:\thed\trunk\web\src\main\client\com\thed\controls\views\Scheduling\TCRScheduling.mxml:228]
at
com.thed.controls.views.Scheduling::TCRScheduling/__phaseCalendar_slItemDelete()[C:\thed\trunk\web\src\main\client\com\thed\controls\views\Scheduling\TCRScheduling.mxml:476]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at
mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9298]
at
com.thed.controls.SwimLaneCalendar::SwimLaneCalendar/dispatchSwinLaneEvent()[C:\thed\trunk\web\src\main\client\com\thed\controls\SwimLaneCalendar\SwimLaneCalendar.mxml:129]
at
com.thed.controls.SwimLaneCalendar::SwimLaneCalendar/handleDeleteResponse()[C:\thed\trunk\web\src\main\client\com\thed\controls\SwimLaneCalendar\SwimLaneCalendar.mxml:142]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at
mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9298]
at
mx.controls.alertClasses::AlertForm/removeAlert()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\controls\alertClasses\AlertForm.as:500]
at
mx.controls.alertClasses::AlertForm/clickHandler()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\controls\alertClasses\AlertForm.as:541]
btnExport.visible: false