Apr 11, 2012, 5:47 PM
Save store doesn't fire CommitFailed event
Hi everybody,
I have a little problem.
When I save my store, I try to simulate an error on server-side to verify the CommitFailed event.
The problem is that the CommitFailed event isn't never fired and I don't know why.
Here is my store on aspx page :
Thanks
I have a little problem.
When I save my store, I try to simulate an error on server-side to verify the CommitFailed event.
The problem is that the CommitFailed event isn't never fired and I don't know why.
Here is my store on aspx page :
<ext:Store ID="ActorsSelectedStore" AutoLoad="false" ShowWarningOnFailure="false" runat="server"
WarningOnDirty="true">
<Proxy>
<ext:HttpProxy Method="POST" Url="/ManageMovies/CharactersSelected" AutoAbort="false" />
</Proxy>
<UpdateProxy>
<ext:HttpWriteProxy Method="POST" Url="/ManageMovies/UpdateActorsInMovie" AutoAbort="false" />
</UpdateProxy>
<Reader>
<ext:JsonReader Root="data" SuccessProperty="success">
<Fields>
<ext:RecordField Name="CharacterID" Type="Int" />
<ext:RecordField Name="ComposedName" Type="String" />
<ext:RecordField Name="Role" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
<WriteBaseParams>
<ext:Parameter Name="movieID" Mode="Value" />
</WriteBaseParams>
<Listeners>
<CommitDone Fn="saveActorsSelectedStoreSuccessHandler" />
<CommitFailed Fn="saveActorsSelectedStoreFailureHandler" />
</Listeners>
</ext:Store>
My GridPanel :<ext:GridPanel ID="ActorsSelectedGridPanel" StoreID="ActorsSelectedStore" Header="true"
Title="Liste des acteurs du film" AutoHeight="true" StripeRows="true" TrackMouseOver="true"
runat="server">
<LoadMask ShowMask="true" Msg="Chargement en cours..." />
<SaveMask ShowMask="true" Msg="Sauvegarde en cours..." />
<View>
<ext:GridView ID="GridView1" EmptyText="Aucun acteur disponible" runat="server" />
</View>
<ColumnModel ID="ActorsColumnModel">
<Columns>
<ext:Column Header="Acteur" Editable="false" DataIndex="ComposedName" Width="300" />
<ext:Column Header="Role" Editable="true" DataIndex="Role" Width="300">
<Editor>
<ext:TextField runat="server" />
</Editor>
</ext:Column>
</Columns>
</ColumnModel>
</ext:GridPanel>
My javascript functions for CommitDone and CommitFailed events :var saveActorsSelectedStoreSuccessHandler = function () {
Ext.Msg.alert('Title', 'Msg');
}
var saveActorsSelectedStoreFailureHandler = function () {
Ext.Msg.alert('Title', 'Msg');
}
And now, my c# code :public AjaxStoreResult UpdateActorsInMovie(int movieID, string data)
{
AjaxStoreResult response = new AjaxStoreResult(StoreResponseFormat.Save);
try
{
response.SaveResponse.Success = true;
}
catch
{
response.SaveResponse.Success = false;
}
return response;
}
Have you any idea to solve this problem ?Thanks