Behandeln von 404 Ausnahmen in Sencha Touch Store mit einem Ajax-Proxy

8

Ich versuche, meinen Code ein wenig robuster zu machen, indem ich alle Arten von Ausnahmen behandle, die auftreten können. Bei einer JSON-Webanfrage kann es sich um eine 404-Ausnahme handeln. Es sieht so aus, als ob die Callback-Methode von store.load nicht aufgerufen wird, wenn die JSON-Anfrage eine 404-Ausnahme erhält.

Der Code:

%Vor%

Dies führt zu einer "Uncaught TypeError: Kann die Eigenschaft 'length' undefined" Exception in Zeile 7212 von sencha-touch-debug.js nicht lesen. Ich benutze Version 1.1.0 von Sencha Touch.

Der Stacktrace:

%Vor%

Was mache ich hier falsch?

Ich habe eine Problemumgehung gefunden, indem ich einen Listener zum Proxy hinzugefügt habe, der das Ereignis 'exception' abhört, aber mir wäre es lieber, wenn die Callback-Funktion des Ladens des Speichers aufgerufen wird. Mache ich etwas falsch oder ist das Standardverhalten?

Danke,

Sander

    
SanderS 19.08.2011, 09:44
quelle

2 Antworten

7

Ich stoße auf die gleiche Ausnahme (Uncaught TypeError: Kann die Eigenschaft 'length' von undefined nicht lesen) mit einem AjaxProxy (ST 1.1.0), wenn der Server einen Fehler (404, 500, ...) zurückgibt.

Ich glaube, das Problem liegt in der Methode Ext.data.AjaxProxy.createRequestCallback . Ich habe mein Problem mit einem schmutzigen Code wie diesem gelöst:

%Vor%

Ich hoffe, das kann helfen, und ich werde versuchen, ein Problem im Sencha-Touch-Forum zu lösen.

    
GiDo 30.08.2011 14:53
quelle
2

Ich denke, Sie haben ein anderes Problem, diese nicht existente URL. Versuche es dennoch:

%Vor%     
Xupypr MV 19.08.2011 11:50
quelle