Klaodeli
29-05-2010, 17:15
Salve ho da poco iniziato a vedere j2ee, e in particolare ad usare struts in quanto voglio programmare secondo il pattern MVC2.
Il primo applicativo che sto facendo consiste in:
un unica pagina in cui si sceglie un tipo di grafico da voler visualizzare (grafico creato tramite jfreechart) e la response torna il jpeg dell'immagine che verrā visualizzata nella stessa pagina.
io ho creato una Action "/grafico.do" e una ActionForm. La Action legge dall'action form il tipo di grafico immesso e delega ad un'altra classe la creazione del JPEG dell'immagine.
=> come faccio a far visualizzare l'immagine nel pagina jsp..??
ho provato 2 modi in entrambi nn ho ottenuto il risultato voluto:
1- salvare il jpeg creato. e poi richiamarlo dalla pagina jsp con <img src="path"...=> credo di avere problemi col path infatti:
___nella classe che crea il grafico mettendo come path "chart.jpg" me lo salva nella cartella domain1 dell'application server (glassfish)!!...
___dal jsp mettendo src="chart.jpg" nn lo trova in quanto lo cerca sotto web-pages (ho provato a metterlo in questa cartella e lo vede).
Dove sbaglio??
2- usare il response della Action con:
OutputStream out = response.getOutputStream();
ChartUtilities.writeChartAsPNG( out, lChart, 640, 480, lInfo ); //č un metodo di jfreechart che credo scriva l'immagine sullo stream out
out.flush();
out.close();
=> da browser appena arriva alla riga response.getOutputStream(); mi si apre una pagina grafico.do con il grafico. Ma io vorrei il grafico nella stessa pagina...inoltre praticamente nn arriva a fare il mapping.forward()..Dove sbaglio?
Se avete da suggerirmi un metodo migliore ve ne sarei grato, sicuramente ho fatto l'errore di iniziare giā usando un framework senza aver preso confidenza con servlet e jsp semplici...ma ormai vorrei completarlo. :help: !
Il primo applicativo che sto facendo consiste in:
un unica pagina in cui si sceglie un tipo di grafico da voler visualizzare (grafico creato tramite jfreechart) e la response torna il jpeg dell'immagine che verrā visualizzata nella stessa pagina.
io ho creato una Action "/grafico.do" e una ActionForm. La Action legge dall'action form il tipo di grafico immesso e delega ad un'altra classe la creazione del JPEG dell'immagine.
=> come faccio a far visualizzare l'immagine nel pagina jsp..??
ho provato 2 modi in entrambi nn ho ottenuto il risultato voluto:
1- salvare il jpeg creato. e poi richiamarlo dalla pagina jsp con <img src="path"...=> credo di avere problemi col path infatti:
___nella classe che crea il grafico mettendo come path "chart.jpg" me lo salva nella cartella domain1 dell'application server (glassfish)!!...
___dal jsp mettendo src="chart.jpg" nn lo trova in quanto lo cerca sotto web-pages (ho provato a metterlo in questa cartella e lo vede).
Dove sbaglio??
2- usare il response della Action con:
OutputStream out = response.getOutputStream();
ChartUtilities.writeChartAsPNG( out, lChart, 640, 480, lInfo ); //č un metodo di jfreechart che credo scriva l'immagine sullo stream out
out.flush();
out.close();
=> da browser appena arriva alla riga response.getOutputStream(); mi si apre una pagina grafico.do con il grafico. Ma io vorrei il grafico nella stessa pagina...inoltre praticamente nn arriva a fare il mapping.forward()..Dove sbaglio?
Se avete da suggerirmi un metodo migliore ve ne sarei grato, sicuramente ho fatto l'errore di iniziare giā usando un framework senza aver preso confidenza con servlet e jsp semplici...ma ormai vorrei completarlo. :help: !