CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[java] lire contenu d'une page web.

-mig-21-
-mig-21-
Niveau 22
31 juillet 2014 à 20:26:35

Bonjour, je suis novice en programmation java, et je rencontre un problème sur Eclipse :(

Alors mon but est très simple, j'essaie de récupérer le HTML d'une URL à l'aide d'un petit programme pour ensuite le manipuler.
En gros pour l'instant mon code ressemble à ça:

import java.net.*;
import java.io.*;

public class URLReader {
public static void main(String[] args) throws Exception {

URL oracle = new URL("http://www.oracle.com/");
BufferedReader in = new BufferedReader(
new InputStreamReader(oracle.openStream()));

String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
}

Si vous le voulez plus lisible, en gros c'est le même que celui sur http://docs.oracle.com/javase/tutorial/networking/urls/readingURL.html , que je modifierai ensuite quand j'aurai résolu ce problème. Normalement la console devrait afficher le contenu du fichier HTML qui compose la page si j'ai bien compris, mais au lieu de ça le programme reste en suspens pendant un certain temps puis la console finit par afficher cette erreur:

Exception in thread "main" java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTPHeader(Unknow
n
Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInp
utStream(Unknown
Source)
at java.net.URL.openStream(Unknown Source)
at URLReader.main(URLReader.java:11)

Apparemment le programme bug lorsque j'appelle la fonction openStream() sur mon URL :(

Selon le site si une erreur survient, il faut que je fasse une manip pour configurer mon proxy, or je n'en utilise pas, donc je ne sais pas d'où vient cette erreur ni comment la corriger (oui mes connaissances en réseau sont assez pourries :hap: )
Bref si quelqu'un pouvait m'aider ce serait sympa, pour info je suis sous windows 7 au cas où :hap:

Darkandgel
Darkandgel
Niveau 10
01 août 2014 à 14:25:57

Essaye de couper ton pare feu pendant l'exec.
A priori ça vient pas du code.

-mig-21-
-mig-21-
Niveau 22
01 août 2014 à 16:46:03

Effectivement, ça marche.
Merci beaucoup. :hap:
Mais y a pas un moyen de configurer le pare-feu de manière à ce que ça marche sans pour autant avoir à le désactiver? :noel:

Darkandgel
Darkandgel
Niveau 10
01 août 2014 à 16:49:46

Oui c'est possible, mais pour la procédure, ça dépend du pare feu que tu utilises.

Il faut que crées une règle qui autorise la JVM a avoir accès au net.

-mig-21-
-mig-21-
Niveau 22
01 août 2014 à 16:55:36

Ok, je vais faire quelques recherches.
merci pour ton aide en tout cas :)

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment