Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Community > Forum De Bell Tolls
 
[Java] help
Clicca QUI per vedere il messaggio nel forum
pancio23
Qualcuno sa come fare per catturare i messaggi di risposta del browser quando carica un URL.

Come Page not found, ecc.

Io lancio il browser da java usando la classe "Browser" che contiene il metodo "displayURL(string URL)".

A questo punto vorrei sapere se il browser carica la pagina o meno!

Grazie

0m4r
potresti essere mooolto più chiaro?
magari posta anche il codice che usi (fra i tag "code" cosi non si spagina tutto)...

pancio23
Bè, il codice dell'evento che lancio per aprire il browser è :

class ButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String URL = e.getActionCommand();

try {
b.init();
b.displayURL(URL);
}
catch (Exception exc) {
JButton button = (JButton)e.getSource();
button.setEnabled(false);
System.err.println(exc.getMessage());
}
}
}

Dove URL è una stringa. A questo punto il browser si apre correttamente, ma io salvare da qualche parte la risposta del browser : ossia se l'url è stato caricato correttamente o se ha incontrato qualche errore.

0m4r
code:
class ButtonListener implements ActionListener { public void actionPerformed(ActionEvent e) { String URL = e.getActionCommand(); try { b.init(); b.displayURL(URL); }catch (Exception exc) { JButton button = (JButton)e.getSource(); button.setEnabled(false); System.err.println(exc.getMessage()); } } }


scusa, ma cosa è b?
è un istanza della classe Browser (che poi, tra l'altro, sta classe Browser dove l'hai pescata?)

P.S.
dai un occhiata qui, qua e piu in generale a questo link

pancio23
Ciao, innanzi tutto ti ringrazio, e mi scuso per il tempo che ti faccio perdere!

Purtroppo i link che mi hai mandato, li avevo già visitati, e in generale parlano di come aprire un browser usando java, ma non di come fare per catturare i messaggi di risposta del browser.

In poche parole, io devo passare una serie di url al browser e vedere se me li carica. Il tutto perchè devo fare un benchmarking dei filtri dei contenuti, come DAVIDE.IT o CHILDKEY.

Se trovi qualcosa d'altro te ne sarei grato, io non riesco ad inventarmi niente.

Ciao

ripe
Ho capito cosa intendi, ma ti so solamente dare la soluzione in Asp.Net (vista la grande somiglianza con Java, magari ti può essere d'aiuto lo stesso...):

Dim Richiesta As System.Net.HttpWebResponse
Dim Risposta As System.Net.HttpWebResponse
Dim Flusso As System.IO.StreamReader
Dim Pagina As String = "http://www.yoursite.com/prova.htm"
Dim Dati As String

Richiesta = Richiesta.Create(Pagina)
Richiesta.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)"

Risposta = Richiesta.GetResponse()
Flusso = New System.IO.StreamReader(Risposta.GetResponseStream())

Dati = Flusso.ReadToEnd
Flusso.Close()
Risposta.Close()

Response.Write("Pagina ottenuta in risposta: " & Risposta.ResponseUri.AbsoluteUri)

Response.Write("Meta tag: " & System.Text.RegularExpressions.Regex.Match(Dati, "URL=(?<href>[^""]+)""").Groups("href").Value()

Response.Write("Titolo della pagina: " & System.Text.RegularExpressions.Regex.Match(Dati, "<title>(?<title>[^<]+)</title>", System.Text.RegularExpressions.RegexOptions.IgnoreCase).Groups("title").Value

In questo modo posso analizzare se nei meta tag è previsto un redirect (ovvero l'indirizzo della pagina è cambiato) oppure se nel titolo è presente il famigerato 404! Lo so che non è un metodo affidabile nel 100% dei casi, ma per quello che serve a me è perfetto!

Vedi se riesci a convertire gli oggetti WebRequest e WebResponse nei rispettivi oggetti di Java...

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate