Thread View: be.comp.programming
4 messages
4 total messages
Started by TRAX
Tue, 18 Nov 2003 21:38
iemand ervaring met HttpURLConnection? (java)
Author: TRAX
Date: Tue, 18 Nov 2003 21:38
Date: Tue, 18 Nov 2003 21:38
16 lines
1867 bytes
1867 bytes
Ik zou dus graag een browser maken in Java (ttz, projectje voor school: netwerken en Java gecombineerd). Heb ik dan HttpURLConnection nodig? (JEditorPane mag ik niet gebruiken, zou te simpel zijn). Met die klasse kan ik al een beetje overweg: connectietje maken, serveresponse weergeven maar daar stopt het. Ik vermoed dat je dmv een stream de inhoud van de URL zal moeten omzetten in een HTML document en dat dan parsen dmv de daartoe bestemde klassen (of is dit wat te simplistisch?). Nu, hier zit het probleem: hoe doe ik dat? kan iemand mij een concreet voorbeeldje geven hierover? Ik ben een Java newbie en heb al op de forums van sun gezocht ook (en google) maar ik zie nergens bruikbare code staan. Alvast bedankt voor de mogelijk hulp --� stijn.verspeet@pandora[delete.this].be
Re: iemand ervaring met HttpURLConnection? (java)
Author: Tim Van Wassenhove
Date: Wed, 19 Nov 2003 00:51
Date: Wed, 19 Nov 2003 00:51
18 lines
1640 bytes
1640 bytes
On 2003-11-18, TRAX <Stijn.Verspeet@pandora> wrote: > Ik zou dus graag een browser maken in Java (ttz, projectje voor school: > netwerken en Java gecombineerd). Heb ik dan HttpURLConnection nodig? > (JEditorPane mag ik niet gebruiken, zou te simpel zijn). Met die klasse kan > ik al een beetje overweg: connectietje maken, serveresponse weergeven maar > daar stopt het. Ik vermoed dat je dmv een stream de inhoud van de URL zal > moeten omzetten in een HTML document en dat dan parsen dmv de daartoe > bestemde klassen (of is dit wat te simplistisch?). Nu, hier zit het > probleem: hoe doe ik dat? kan iemand mij een concreet voorbeeldje geven > hierover? > Ik ben een Java newbie en heb al op de forums van sun gezocht ook (en > google) maar ik zie nergens bruikbare code staan. Ga nog eens kijken, maar kijk eens uit naar het keyword Socket bijvoorbeeld. -- verum ipsum factum
Re: iemand ervaring met HttpURLConnection? (java)
Author: An Ony
Date: Wed, 19 Nov 2003 11:26
Date: Wed, 19 Nov 2003 11:26
98 lines
4285 bytes
4285 bytes
"TRAX" <Stijn.Verspeet@pandora[delete.this].be> schreef in bericht
news:9jwub.30757$oA3.1084528@phobos.telenet-ops.be...
> Ik zou dus graag een browser maken in Java (ttz, projectje voor school:
> netwerken en Java gecombineerd). Heb ik dan HttpURLConnection nodig?
> (JEditorPane mag ik niet gebruiken, zou te simpel zijn). Met die klasse
kan
> ik al een beetje overweg: connectietje maken, serveresponse weergeven maar
> daar stopt het. Ik vermoed dat je dmv een stream de inhoud van de URL zal
> moeten omzetten in een HTML document en dat dan parsen dmv de daartoe
> bestemde klassen (of is dit wat te simplistisch?). Nu, hier zit het
> probleem: hoe doe ik dat? kan iemand mij een concreet voorbeeldje geven
> hierover?
> Ik ben een Java newbie en heb al op de forums van sun gezocht ook (en
> google) maar ik zie nergens bruikbare code staan.
>
Hier is een textbrowser die ik eens geschreven heb, kan je misschien
gebruiken.
Ik weet niet of java klassen heeft die HTML kan parsen volgens bepaalde
standaarden. Een XML-parser zit er wel in, dus misschien heb je geluk, nog
niet zelf gekeken.
=============================================================
import java.io.*;
import java.net.*;
public class HttpTextBrowser {
public static void main(String[] args) throws IOException {
URL url = null;
String host = null;
int port = 0;
Socket c = null;
PrintWriter out = null;
BufferedReader input =null;
if( args.length != 1){
System.out.println("Usage : java HttpTextBrowser URL");
System.exit(1);
}
try {
/* Vul de variabelen url, host en port in met de informatie vanop de
commandolijn */
url = new URL(args[0]);
host = url.getHost();
port = url.getPort();
if (port<0) port = 80;
/* Maak een Socket aan met de correcte host en port */
c = new Socket(host,port);
/* Initialiseer de PrintWriter out en de BufferedReader input */
out = new PrintWriter(c.getOutputStream());
input = new BufferedReader(new InputStreamReader(c.getInputStream()));
}
/* Vang de mogelijke excepties op, en stop het programma indien er
een exceptie optreedt */
catch (MalformedURLException e) {
System.err.println(e+ "\nURL is van de vorm http://<host>:<poort>");
System.exit(1);
}
catch (IOException e) {
System.err.println(e);
System.exit(2);
}
catch (Exception e) {
System.err.println(e);
System.exit(3);
}
/* Bouw de request string op, vergeet de \n\r niet ! */
String fromUser = "GET http://"+host+url.getPath()+"
HTTP/1.1\r\nHost: \r\n\r\n";
System.out.println(fromUser);
out.println(fromUser);
out.flush();
/* Lees de eerste lijn van het antwoord van de server (van de input
stream) */
String fromServer = input.readLine();
while (fromServer != null){
System.out.print(fromServer+"\r\n");
/* Lees een volgende lijn in van het antwoord */
fromServer = input.readLine();
}
/* Sluit de out en input stroom en nadien de socket */
out.close();
input.close();
c.close();
}
}
=============================================================
Re: iemand ervaring met HttpURLConnection? (java)
Author: TRAX
Date: Wed, 19 Nov 2003 20:26
Date: Wed, 19 Nov 2003 20:26
8 lines
1428 bytes
1428 bytes
> Ik weet niet of java klassen heeft die HTML kan parsen volgens bepaalde > standaarden. jup, volgens mij zitten die erin, en anders gebruik ik enkel voor de weergave JEditorPane, dat zal wel toegestaan zijn, zoalng ik maar verbinding leg dmv sockets... Bedankt! helpt me echt vooruit!
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads