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

Entrée/Sortie Java Discussion :

[débutant] Problème BufferedReader


Sujet :

Entrée/Sortie Java

  1. #1
    Membre averti
    Inscrit en
    Février 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 33
    Par défaut [débutant] Problème BufferedReader
    Bonjour,

    J'ai un souci avec un BufferedReader qui recupère une url, ai je un moyen de savoir s'il est prêt?
    En gros est ce que je pers mes infos du buffer s'il n'est pas prêt avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    input = new BufferedReader(new InputStreamReader(urlConn.getInputStream()));
    serverResponse = input.readLine();
    // Rename the file and update the jtable
    this.parseServerResponse(serverResponse, nbfile);
    input.close();
    Merci d'avance.

  2. #2
    Membre éclairé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 572
    Par défaut
    urlConn c 'est quoi ?

    il y a certains streams dont la lecture est bloquante (comme les inputstreams des sockets) et donc tant que t as pas assez pour remplir le bloc spécifié, ça n'avance pas.

  3. #3
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    URLConnection je suppose. A mon humble avis la lecture sur un stream url n'est pas bloquante...

  4. #4
    Membre averti
    Inscrit en
    Février 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 33
    Par défaut
    urlconn c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    url = new URL(getCodeBase().toString() + phpPage);
    urlConn = url.openConnection();
    urlConn.setDoInput(true);
    urlConn.setDoOutput(true);
    urlConn.setUseCaches(false);
    urlConn.setRequestProperty("Content-Type",
    "application/x-www-form-urlencoded");
    En fait je recupere une reponse de ma page php.

    Plus précisement ma question c'est de savoir si le buffer input.readLine(); va attendre sa réponse où bien continuer son chemin si la réponse de php ne vient pas assez vite.

    Merci.

  5. #5
    Membre chevronné Avatar de spekal
    Inscrit en
    Mai 2005
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 502
    Par défaut
    input.readLine() va attendre la réponse.

  6. #6
    Membre averti
    Inscrit en
    Février 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 33
    Par défaut
    Donc le input.readLine(); va attendre tant qu'il n'a rien dans le buffer?
    Mon problème ne vient donc pas de là...

  7. #7
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par kidu
    Mon problème ne vient donc pas de là...
    Et si tu nous expliquais ton problème ???

    a++

  8. #8
    Membre averti
    Inscrit en
    Février 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 33
    Par défaut
    Oui désolée.
    En fait, j'ai un site php avec une applet java à l'intéreur.
    Dans cette applet j'ai une liste de fichier que je traite un par un.
    Mon problème c'est que sur certains postes (moins rapides que le mien ), l'applet s'emmèle les pinceaux dans les fichiers, elle saute le traitement d'un fichier sur deux.
    Etant donné que je n'ai pas le problème sur mon poste je pensais que cela venait de la réponse du fichier qui ne venait pas (en fait l'applet, le buffer ouvre et lit un echo que je fait dans un fichier).

    Merci.

  9. #9
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Est-ce que tu traites les éventuelles exception de ton Applet ? Tu peux avoir des problèmes de connections tout simplement...

    a++

  10. #10
    Membre averti
    Inscrit en
    Février 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 33
    Par défaut
    oui il y a un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    catch (IOException e2) {
    e2.printStackTrace();
    pour gérer les eventuels problèmes de IO.

  11. #11
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Et tu n'as aucune trace dans la console ???

    a++

  12. #12
    Membre averti
    Inscrit en
    Février 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 33
    Par défaut
    Non c'est pour ça que je me pose des questions.

  13. #13
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 94
    Par défaut
    Citation Envoyé par kidu
    Donc le input.readLine(); va attendre tant qu'il n'a rien dans le buffer?
    Mon problème ne vient donc pas de là...
    Une SocketTimeoutException va être lancée au bout d'un moment, il n'attendra pas indéfiniment.

    Bizarre que t'es aucun message d'erreur, tu peux toujours augmenter le timeout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void setReadTimeout(int timeout)

Discussions similaires

  1. [Débutant] Problème de variables
    Par bonnefr dans le forum SWT/JFace
    Réponses: 9
    Dernier message: 12/05/2004, 18h41
  2. Réponses: 2
    Dernier message: 28/04/2004, 12h25
  3. [Débutant] Problème de déconnexion d'une page JSP
    Par amal9 dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 22/01/2004, 14h40
  4. [débutant] Problèmes avec CRegKey
    Par Pedro dans le forum MFC
    Réponses: 4
    Dernier message: 10/11/2003, 16h28
  5. Réponses: 11
    Dernier message: 02/09/2003, 15h20

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