IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

[JQuery] Récupération de réponse serveur morcelée


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 138
    Par défaut [JQuery] Récupération de réponse serveur morcelée
    Bonjour à tous.

    Je suis tout nouveau ici, alors j'espère ne pas faire de bourdes en postant ici.

    Mon problème : j'ai une application client-serveur (JSP/Servlets). Je planche actuellement sur une fonctionnalité de recherche. L'utilisateur saisie une chaîne de caractères et valide, puis une fonction AJAX s'occupe d'envoyer celle-ci au serveur :

    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
     
    $.ajax({
            type: "POST",
    	url: "gestStages",
    	data: "ajax=yes&recherche=" + $("#recherche").val(),
    	dataType: "xml",
    	success: function(xml){
    		$(xml).find("stage").each(function(){
    			$("#tableRecherche").append("<tr></tr>") ;
    			$(this).children().each(function(){
    				$("#tableRecherche tr:last-child").append("<td>" + $(this).text() + "</td>") ;
    			});
    		});
    	} 
    });
    Je récupère donc ici un document XML, que je parse dans la clause success, à l'aide de la librairie JQuery. Si ce document fait moins de 200 lignes, tout va bien. Mais j'ai des requêtes qui retournent plus de 1000 lignes, et selon Firebug, la "response" est "chunked" (Transfert-encoding). Dans cet unique cas, c'est comme si je recevais un fichier XML vide, alors que dans la fenêtre de FB, il m'est possible de visualiser ce même document, au complet.

    Cela veut bien dire qu'il a fait tout le chemin pour arriver à bon port. C'est donc un problème de lecture, mais, au bout de deux journées sans avancer, je m'en remet à vous.

    En espérant avoir été le plus clair possible.
    Par avance, merci pour votre aide.

  2. #2
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 138
    Par défaut
    Bonjour,

    Je reviens avec un peu plus de précisions, car je vois que personnes n'est inspiré. J'ai fais des tests supplémentaires, et modifié ma fonction AJAX en rajoutant ce qui suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    error: function(XMLHttpRequest, textStatus, errorThrown){
    	alert(XMLHttpRequest);
    	alert(textStatus);
    	alert(errorThrown);
    }
    Cette fonction me fait donc apparaître le message d'erreur "parsererror" pour le textStatus. Ce que je ne comprend pas, c'est que dans Firebug, mon document est bel et bien formé. Cette erreur n'a donc pas lieu d'être...

    Sinon, la piste sur laquelle j'étais parti (découpage de la réponse HTTP) n'a pas l'air d'être le problème principal, car parmi les petites requêtes qui marchent, certaines sont justement morcelées.

    Merci à vous

  3. #3
    Membre Expert Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Par défaut
    Si tu récupères ta réponse en format text et non xml, elle est bien complète ou pas?

  4. #4
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 138
    Par défaut
    Bonjour à toi !

    J'ai justement essayé de déclarer du text et non de l'xml, et la, la récupération apparemment tournerait bien pour les, disons, 300 premières lignes, puis plante en me disant qu'un script ne répond pas ou est peut-être arrêté. Trois boutons s'offrent à moi, ignorer, arrêter, et debogger.

    Donc voilà, y'a du mieux, mais c'est pas encore ça. Pour tout avouer, je commence à désespérer et me dire après des heures entières passées sur Google à chercher et rechercher qu'il n'y a pas forcément de solution oO

    Merci beaucoup pour ta suggestion en tout cas

  5. #5
    Membre Expert Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Par défaut
    C'est quand même pas normal que tu puisses pas faire une requete qui te retourne tous tes résutats... T'as essayé de faire la requête à la main, sans passer par ton framework? (jQuery?)

  6. #6
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Juin 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2008
    Messages : 138
    Par défaut
    Qu'entends-tu par faire une requête à la main sans passer par le framework? Genre je la fais dans MySQL QB?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupération de donnée serveur local et distant
    Par sebaaas dans le forum Langage
    Réponses: 1
    Dernier message: 04/12/2007, 23h51
  2. [TCP IP] Demande-réponse serveur
    Par klimasDavid dans le forum Web & réseau
    Réponses: 2
    Dernier message: 19/11/2007, 21h47
  3. [AJAX] AJAX et gestion des réponses serveur
    Par eolis dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/09/2007, 17h04
  4. XMLHTTP : réponse serveur
    Par Tsukaniki dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/08/2007, 02h31
  5. [XML] [XML-RPC] retrouver les infos d'une réponse serveur
    Par arnolem dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 07/08/2006, 12h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo