merry1marie
Messages postés8Date d'inscriptionvendredi 6 avril 2012StatutMembreDernière intervention12 avril 2012
-
7 avril 2012 à 15:29
merry1marie
Messages postés8Date d'inscriptionvendredi 6 avril 2012StatutMembreDernière intervention12 avril 2012
-
12 avril 2012 à 16:55
Bonjour
C'est ma première visite sur ce forum, il me parait très intérressant vu les expliccations simples et nettes que les membres utilisent pour répondre aux questions posées, donc je me suis dit qu'ici je peux trouver ce que m'aidera à accomplir mon projet..
Tout d'abords j'avoue que je suis ignare en java
et le code que je vais poster n'est pas le mien, mais j'en ai vraiment besoin..
mon projet consiste à réaliserun serveur HTTP simple qui sert à répondre à qlq requêtes envoyées par un cleint situé sur une autre machine, voici ce que j'ai trouvé..
ça c'est le premeir bloc:
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Scanner;
public class html {
public static void main(String[] args){
html test= new html();
Scanner sc = new Scanner(System.in);
System.out.println("Entrer l'adresse de votre page html");
String page = sc.nextLine();
String res = test.getIpFrom(page);
System.out.println(res);
}
public static String getIpFrom(String adresse) {
String toreturn = null;
try {
// creation d'un objet URL
URL url = new URL(adresse);
// on etablie une connection a cette url
URLConnection uc = url.openConnection();
// on y cree un flux de lecture
InputStream in = uc.getInputStream();
// on lit le premier bit
int c = in.read();
// on cree un StringBuilder pour par la suite y ajouter tout les bit lus
StringBuilder build = new StringBuilder();
// tant que c n'est pas egale au bit indiquant la fin d'un flux...
while (c != -1) {
build.append((char) c);
// ...on l'ajoute dasn le StringBuilder...
c = in.read();
// ...on lit le suivant
}
// on retourne le code de la page
toreturn = build.toString();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return toreturn;
}
}
mon problème est que je sais pas comment attacher ces deux blocs et comment les compiler et finir mon travail pour obtenir le résultat final..
Merci pour ceux qui lisent et répondre à mes questions
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 201611 11 avril 2012 à 20:27
non
tu ne peux pas avoir deux méthode main dans une meme classe...
si tu veux garder le meme principe, il te faut garder deux classes séparées, c'est le plus simple...
concernant les problèmes de compilation, sans nous dire lesquels surviennent, on ne peut pas t'aider ^^
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 201611 11 avril 2012 à 20:58
pourquoi n'arrives-tu pas à l'exécuter? quels sont tes messages d'erreurs?
normalement tu dois avoir deux fichiers différents.
ensuite tu fais comme si tu exécutais deux programmes différents... un avec le premier bloc et le deuxieme avec, tu l'auras deviné, le deuxieme bloc
cormandyr
Messages postés600Date d'inscriptionsamedi 20 mai 2006StatutMembreDernière intervention 8 juillet 201611 12 avril 2012 à 08:06
pas du tout...
C'est parce que tu lances deux fois le deuxième bloc...
dans le package explorer, fait un clock droit sur le premier block, run, ... ensuite tu fais de meme pour le deuxième. Normalement si le premier block se lance, tu auras dans la console :
Server Started...
Waiting for connexions...
merry1marie
Messages postés8Date d'inscriptionvendredi 6 avril 2012StatutMembreDernière intervention12 avril 2012 12 avril 2012 à 09:28
Quand je lance le premier j'aurais un msg d"erreur disant:
null
java.net.MalformedURLException: no protocol: www.google.fr
at java.net.URL.(Unknown Source)
at java.net.URL.(Unknown Source)
at java.net.URL.(Unknown Source)
at html.getIpFrom(html.java:26)
at html.main(html.java:18)
merry1marie
Messages postés8Date d'inscriptionvendredi 6 avril 2012StatutMembreDernière intervention12 avril 2012 12 avril 2012 à 16:45
Re
Si je ne change aucun paramètre et j'exécute seulement, j’obtiens cette erreur:
Entrer l'adresse de votre page html
http://www.google.fr
java.net.UnknownHostException: www.google.fr
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at html.getIpFrom(html.java:30)
at html.main(html.java:18)
null
merry1marie
Messages postés8Date d'inscriptionvendredi 6 avril 2012StatutMembreDernière intervention12 avril 2012 12 avril 2012 à 16:55
désolée, c'est pas cette erreur que j’obtiens...
[del]
Code Java :
Entrer l'adresse de votre page html
http://www.google.fr java.net.UnknownHostException: www.google.fr
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at html.getIpFrom(html.java:30)
at html.main(html.java:18)
null/del
C'est plutôt celle ci:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
at HttpServer.main(httpserver.java:11)