jfreechart的图片已经在tomcat的temp目录下生成了!可是按照文档上说的配置了web.xml为:<servlet>
<servlet-name>DisplayChart</servlet-name>
<servlet-class>
org.jfree.chart.servlet.DisplayChart
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DisplayChart</servlet-name>
<url-pattern>/DisplayChart</url-pattern>
</servlet-mapping>
可是在网页中就是显不出来图片,只有个红叉

<%String fileName = ServletUtilities.saveChartAsPNG(chart, 800, 600, null, session);
            
            String url1 = request.getContextPath() + "/DisplayChart?filename=" + fileName; 
           System.out.println(url1);
%>
<div align="center">
<img src="<%=url1%>" width="800" height="600">
</div>
在myeclipse新建一个工程,将此代码抽取出来,放入新建的JSP中能成功显示。

解决方案 »

  1.   

    确认你的jfreechart版本!1.0以上版本不支持你的用法!
      

  2.   

    jfreechart-0.9.6.jar版本使用的是你的用法,同时确认的web服务器是否支持,如果是tomcat需要在catalina.sh或
    catalina.bat中增加JAVA_OPTS=-Djava.awt.headless=true,就应该可以了
      

  3.   

    我现在用的是jfreechart1.0.13最新的版本!tomcat6.0.18你说的那些东西在哪里呀?tomcat中怎么找不到?现在的这个版本的jfreechart要实现我的那个功能应该怎么用呢?请指教!
      

  4.   

    <url-pattern>/servlet/DisplayChart</url-pattern>
    String url1 = request.getContextPath() + "/servlet/DisplayChart?filename=" + fileName;
    这样改了试下
      

  5.   

    楼主问题解决了么?我最近也出现这个问题了,以前用的好好的,今天测试的时候就不行了,显示一个叉,图像已经生成了,在tomcat的temp路径下,jsp页面和web.xml设置跟8楼的一样。
      

  6.   

    直接在servlet中用流输出就行了,干嘛还生成临时文件啊?
      

  7.   

    升级你的JDK版本咯  我以前的也是这样