Grafico com JfreeChart em pagina JSP

4 respostas
mdcarmo

Boa tarde a todos

Estou precisando criar grafico na minha aplicação, estou usando Struts 1 com JfreeChart, estou criando a imagem na action mas não sei como pegar a imagem no JSP

Codigo na action:

public ActionForward createGraphicNew(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response)

throws Exception {
try {
		
		XYSeries series = new XYSeries("Average Weight");
		series.add(20.0, 20.0);
		series.add(40.0, 25.0);
		series.add(55.0, 50.0);
		series.add(70.0, 65.0);
		
		XYDataset xyDataset = new XYSeriesCollection(series);
		
		JFreeChart chart = ChartFactory.createXYLineChart
		          ("Teste", "X", "Y",
		           xyDataset, PlotOrientation.VERTICAL, true, true, false);
		
	             BufferedImage buf = chart.createBufferedImage(640, 400, null); 
	             JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( response.getOutputStream() );
	             JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam( buf );
	             param.setQuality( 0.75f, true );
	             encoder.encode( buf, param );
		
	             request.getSession().setAttribute("grafico",chart);  
	
			return mapping.findForward(SUCCESS);
		} catch (Exception e) {
			handleException(request, e);
			return mapping.findForward(FAILURE);
		}
	}

na pagina JSP:

? como pegar a imagem gerada na action???

Agradeço desde já a atenção de todos

4 Respostas

L

Com struts eu nao sei mas ja fiz isso com servlet,na minha tag image eu passava o caminho da imagem gerada pelo servlet.

rodrigo.bossini

Você criou o gráfico e setou como atributo na session. Basta dar um getAttribute na session pra recuperar o objeto.

mdcarmo

Mas como eu jogo a imagem no jsp? é exatamente isso que não sei fazer

furutani

use a tag

<img src="seuAction.do">
Criado 5 de outubro de 2009
Ultima resposta 5 de out. de 2009
Respostas 4
Participantes 4