inputstream jsp

0 views
Skip to first unread message

GiuseppeFanuzzi

unread,
Apr 30, 2008, 7:44:08 AM4/30/08
to JUG Bari
Ciao a tutti
ho un problema apparentemente banale ma che non sono ancora riuscito a
risolvere.

Da una servlet devo leggere il risultato di una pagina jsp o di
un'altra servlet (che magari redireziona su altre pagine), ed
inserirlo in una stringa.
La pagina jsp (o servlet) da richiamare risiede nella stessa web
application, non è una pagina di un altro sito web, condivide, quindi,
l'oggetto httpsession

Dovrei, praticamente, simulare quello che fa l'oggetto xmlhttprequest
di ajax, ma non da javascript bensì da una servlet!!!

Ho provato diverse soluzioni, tipo l'uso della classe URL (ma crea una
nuova sessione), l'uso del methodo include della classe
RequestDispatcher (ma non potrei più modificare il content-type ). Ho
provato anche ad usare la libreria "httpclient", ma gli effetti sono
simili a quelli della classe URL

Qualche idea?

Grazie molte

Giuseppe


Francesco Vasco

unread,
Apr 30, 2008, 8:17:31 AM4/30/08
to jug...@googlegroups.com
Se ho capito il problema (e dubito) dovrebbe andare bene tanto la classe URL quanto la libreria HttpClient, ma li passi i cookie?


----- Messaggio originale -----
Da: GiuseppeFanuzzi <gif...@gmail.com>
A: JUG Bari <jug...@googlegroups.com>
Inviato: Mercoledì 30 aprile 2008, 13:44:08
Oggetto: [JUGBari] inputstream jsp

Inviato da Yahoo! Mail.
La casella di posta intelligente.

Marco Giglione

unread,
Apr 30, 2008, 8:29:23 AM4/30/08
to jug...@googlegroups.com
Ciao Giuseppe,
se ho capito bene tu vuoi da una servlet chiamare un altro url, prendere il
risultato e farci quello che vuoi.
Se è giusto io userei la classe:

HttpURLConnection

http://java.sun.com/j2se/1.5.0/docs/api/

Alla quale potrai fornire anche i parametri etc...

-----Messaggio originale-----
Da: jug...@googlegroups.com [mailto:jug...@googlegroups.com] Per conto di
GiuseppeFanuzzi
Inviato: mercoledì 30 aprile 2008 13.44
A: JUG Bari
Oggetto: [JUGBari] inputstream jsp

Qualche idea?

Grazie molte

Giuseppe

No virus found in this incoming message.
Checked by AVG.
Version: 7.5.524 / Virus Database: 269.23.6/1404 - Release Date: 29/04/2008
18.27

No virus found in this outgoing message.
Checked by AVG.
Version: 7.5.524 / Virus Database: 269.23.6/1404 - Release Date: 29/04/2008
18.27

giuseppe fanuzzi

unread,
Apr 30, 2008, 9:19:25 AM4/30/08
to jug...@googlegroups.com
Cao
Forse il problema è nel non riuscire a passare i cookie
Quindi la domanda diventa: come passare i cookie di sessione tramite
URLConnection?

2008/4/30 Marco Giglione <gigl...@next-ware.it>:

GiuseppeFanuzzi

unread,
Apr 30, 2008, 9:24:35 AM4/30/08
to JUG Bari
OK! Risolto!
Piuttosto che passare gli header della request mi ostinavo a passare i
cookie!!!

Grazie a tutti!!!

On 30 Apr, 15:19, "giuseppe fanuzzi" <gif...@gmail.com> wrote:
> Cao
> Forse il problema è nel non riuscire a passare i cookie
> Quindi la domanda diventa: come passare i cookie di sessione tramite
> URLConnection?
>
> 2008/4/30 Marco Giglione <gigli...@next-ware.it>:

Marco Giglione

unread,
Apr 30, 2008, 11:19:41 AM4/30/08
to jug...@googlegroups.com
Benissimo! Posta il pezzo di codice così chi legge il post dopo di te sa
come fare ;-)

-----Messaggio originale-----
Da: jug...@googlegroups.com [mailto:jug...@googlegroups.com] Per conto di
GiuseppeFanuzzi

Inviato: mercoledì 30 aprile 2008 15.25
A: JUG Bari
Oggetto: [JUGBari] Re: R: [JUGBari] inputstream jsp

GiuseppeFanuzzi

unread,
Apr 30, 2008, 11:42:10 AM4/30/08
to JUG Bari
Ecco come ho risolto:
Lo stesso risultato si può benissimo ottenere anche con la class
UrlHttpConnection. Ancora grazie!

HttpClient client=new HttpClient();
HttpMethod method = new
GetMethod("http://localhost:8080/webApplication/servlet.do");
Enumeration e=request.getHeaderNames();
while (e.hasMoreElements())
{
String nome=(String)e.nextElement();
String valore=request.getHeader(nome);
method.setRequestHeader(nome,valore);
}
int statusCode = client.executeMethod(method);
String risultatoHtml=method.getResponseBodyAsString();

giuseppe fanuzzi

unread,
Apr 30, 2008, 11:39:19 AM4/30/08
to jug...@googlegroups.com
Ecco come ho risolto:
Lo stesso risultato si può benissimo ottenere anche con la class
UrlHttpConnection. Ancora grazie!

HttpClient client=new HttpClient();
HttpMethod method = new
GetMethod("http://localhost:8080/webApplication/servlet.do");
Enumeration e=request.getHeaderNames();
while (e.hasMoreElements())
{
String nome=(String)e.nextElement();
String valore=request.getHeader(nome);
method.setRequestHeader(nome,valore);
}
int statusCode = client.executeMethod(method);
String risultatoHtml=method.getResponseBodyAsString();

2008/4/30 Marco Giglione <gigl...@next-ware.it>:

Francesco Vasco

unread,
Apr 30, 2008, 5:47:10 PM4/30/08
to jug...@googlegroups.com
Elementare Watons!

----- Messaggio originale -----
Da: giuseppe fanuzzi <gif...@gmail.com>
A: jug...@googlegroups.com
Inviato: Mercoledì 30 aprile 2008, 17:39:19
Oggetto: [JUGBari] Re: R: [JUGBari] Re: R: [JUGBari] inputstream jsp

Yahoo! Mail: gratis 1GB per i messaggi, antispam, antivirus, POP3
Reply all
Reply to author
Forward
0 new messages