handler:function() { var titulo="ENVIA FORMULARIO"; if (frm.form.isValid()){ var campo1 = Ext.getCmp('campo1').getValue(); var campo2 = Ext.getCmp('campo2').getValue(); var campo3 = Ext.getCmp('campo3').getValue(); var conn = new Ext.data.Connection(); Ext.MessageBox.wait('Por favor espere...', titulo); conn.request({ url : 'fileCRUD.php' , params: { 'campo1' :campo1 ,'campo2' :campo2 ,'campo3' :campo3 } , success: function (result, request ) { Ext.MessageBox.hide(); var jsonData = Ext.util.JSON.decode(result.responseText); Ext.Msg.show({ title: titulo, msg: jsonData.msg, buttons: Ext.Msg.OK, animEl: 'elId', icon: Ext.MessageBox.INFO }); myAppStore.reload(); myAppWin.close(); } //end of success ,failure: function (result, request ) { Ext.MessageBox.hide(); var jsonData = Ext.util.JSON.decode(result.responseText); Ext.Msg.show({ title: 'Error: ' + titulo, msg: 'Hubo un error al realizar ' + titulo + jsonData.statusText, buttons: Ext.Msg.OK, animEl: 'elId', icon: Ext.MessageBox.ERROR }); } //end of failure }); //end of conn.request } //end if } //end of handler
Request Ajax = Aborted |
Despues de investigar un poco, descubrí que el proceso se cancela debido a que valor por default del timeOut (tiempo de espera) es de 30000 milisegundos . Intente cambiar el valor del tiempo de espera (timeOut): En todas las llamadas Ajax:
Ext.ajax.timeOut = 600000 /* No funciona */Al realizar la conexión:
Ext.Connection.timeOut = 600000 /* No Funciona */En el formulario:
Ext.Form.timeOut = 600000 /* No Funciona */Sin embargo este valor no se modificaba a nivel global.
Despues de multiples intentos y pruebas, he logrado cambiar el valor del timeOut con la siguiente línea al inicio del programa.
/* SI FUNCIONA */ Ext.data.Connection.prototype.timeout =30000; // 600 segundos; 5 minutos;
Espero que les sea de utilidad.
Happy Coding!
6 comentarios:
Graaacias, esto lo he buscado por muucho tiempo
hola amio, esto es lo que ando buscando, pq tengo un proceso de migracion de datos, dentro de ello tengo un update que demora mas de 32 segundos y me aborta. dime donde configuro la linea q publicaste?
ENORMEMENTE AGRADECIDO
upsss haber si me respondes a mi correo lhilariocontreras@gmail.com
graciaa
De ahora en adelante seras un hermano... :), todo el santo dia de ayer buscando el porque se aborta la petición, modifique casi todo el php .ini y nada... y en la mañana me pregunto... cuando se activa el "failure" de la llamada ajax... :) .. Gracias brother :)
Hola @David que gusto que te haya sido de ayuda, yo también en su momento me tarde 2 días enteros tratando de resolverlo.
Gracias por el post, da gusto encontrar información sobre extjs bien explicada y en español :D
Publicar un comentario