Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/11/2007, 07:22
akiles83
 
Fecha de Ingreso: octubre-2007
Mensajes: 28
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Gráfica en jsp

Hola no puedes hacerlo asi, supongo que lo que estas haciendo es dentro de la jsp
Código:
<%= ChartUtilities.writeChartAsJPEG(out,grafico,ancho,alto)%>
debes hacer lo siguiente:

1.- En tu JSP crearte una etiqueta <img> de esta manera
Código HTML:
<img src="ServletGrafico"> 
donde ServletGrafico sera el servlet que te redirija a la clase que te lo trate, p.e. llamemos a la clase servletGrafico, quedando en el web.xml
Código:
<servlet>
      <servlet-name>ServletGrafico</servlet-name>
      <servlet-class>servletGrafico</servlet-class>
</servlet>
<servlet-mapping>
      <servlet-name>ServletGrafico</servlet-name>
      <url-pattern>/ServletGrafico</url-pattern>
</servlet-mapping>
en servlet-class debe ir el nombre totalmente cualificado de la clase, es decir, si el servlet lo tienes metido en el paquete llamado src.servlets, pues el servlet-class debe ser <servlet-class>src.servlets.servletGrafico</servlet-class>

2.- en el servlet que lo trata debe poner el siguiente codigo, al tratarse de un servlet doy por supuesto que debes tratarlo dentro del metodo doGet(HttpServletRequest, HttpServletResponse).

Código:
                res.setContentType("image/jpeg");
		try
		{
			OutputStream out = res.getOutputStream();
			ChartUtilities.writeChartAsJPEG(out, graficoBarras, Integer.parseInt(sAncho.trim()), Integer.parseInt(sAlto.trim()));
			out.close();
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
ya con esto debe funcionarte, debe saber que el método writeChartAsPNG o writeChartAsJPEG se comunica con la JSP mediante Stream, entonces la unica manera de pintar la grafica es asi.

Espero haberte ayudado. Saludos