Bonjour,
sauriez-vous pourquoi un xhr.status resterait toujours à 0 alors qu'on lui donne une valeur dans notre code :
Aperç du code jsp attribuant une valeur au status :
Aperçu code AJAX reprenant cette valeur pour retourner qquelque chose :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 if(request.getMethod().equals("GET")){ if(liste.getTailleListe() > Integer.decode(c.getValue())) { c.setValue(String.valueOf(liste.getTailleListe())); response.setStatus(HttpServletResponse.SC_OK); pageContext.forward("Affichage.jsp"); } else { response.setStatus(HttpServletResponse.SC_NO_CONTENT); } } else{ response.setStatus(HttpServletResponse.SC_OK); pageContext.include("Stockage.jsp", false); pageContext.forward("Affichage.jsp"); c.setValue(String.valueOf(liste.getTailleListe())); }
J'avoue réfléchir sur cette erreur sans comprendre pourquoi elle retourne toujours xhr.status à 0 alors que nous l'avons "normalment" bien initialisé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 function getXMLDocument(xhr, XMLDoc, id) { // teste si la r�ponse est disponible if (xhr.readyState==4) { // teste si la r�ponse est arriv�e et contient des donn�es (code HTTP = 200 : OK) if (xhr.status == 200) { // teste si la r�ponse est arriv�e en XML ou en texte (peut arriver pour certaines configurations d'Apache) if (xhr.responseXML != null) { XMLDoc= xhr.responseXML; } else if (xhr.responseText != null) { //si la r�ponse est en texte, transformation en XML (voir fonction fa�ade plus bas) XMLDoc= parseFromString(xhr.responseText); } //D�commentez la ligne suivante pour voir le contenu XML obtenu (ne marche qu'avec FF) //alert((new XMLSerializer()).serializeToString(XMLDoc)); //appel de la fonction de traitement qui va ajouter les donn�es au corps de la page (� �crire) traiteXML (XMLDoc, id); //teste si le code de statut est autre que le code renvoye en cas d'absence de nouveaux messages. //Remarque : le code 1223 provient d'un bug avec IE : http://trac.dojotoolkit.org/ticket/2418 } else if (xhr.status != 204 && xhr.status != 1223) { alert("Un probleme est survenu avec la requete : "+ xhr.status); } } }
Partager