问题描述
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>/ReportServlet/DisplayChart</url-pattern></servlet-mapping>jsp页面<tr><%StringgraphURL=(String)request.getAttribute("graphURL");%><tdcolspan="5"align="center"><imgsrc="/<%=graphURL%>"/></td></tr><%=graphURL%>jfreechart-35189.jpeg在页面能够输出这个jpg图片。但是就是不显示。虚心请教下。。
解决方案
解决方案二:
<tdcolspan="5"align="center"><imgsrc="<%=graphURL%>"/></td><tdcolspan="5"align="center"><imgsrc="<%=request.getContextPath()%>/<%=graphURL%>"/></td>如果你图片生成成功了,第二种方式一定可以显示图片。第一种方式是相对路径,是否能够显示图片这得根据你地址样的路径来决定。
解决方案三:
第一:最好不要用这个坑爹的ServletUtil创建图片看看你tomcat下的temp是不是有很多jpg/png?一个文件就80K想一下多用户的访问的话1分钟1次都要1小时就是60*80k一天就是60*80*24k一个月就是30*60*80*24=3456000k=3375M天啊jfreechart竟然有这么坑爹的方法!!!其次:你生成图片的类是怎么写的?JFreeChartchart=createChart(getDataset());HttpSessionsession=request.getSession();Stringfilename=ServletUtilities.saveChartAsJPEG(chart,644,299,info,session);StringgraphURL=request.getContextPath()+"/servlet/DisplayChart?filename="+filename;
楼主的代码将graphURL存贮了么?是转发到该页面的?request.setAttribute("graphURL",graphURL);request.getRequestDispatcher("chart.jsp").forward(request,response);
解决方案四:
<servlet><description>ThisisthedescriptionofmyJ2EEcomponent</description><display-name>ThisisthedisplaynameofmyJ2EEcomponent</display-name><servlet-name>DisplayChart</servlet-name><servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class></servlet><servlet-mapping><servlet-name>DisplayChart</servlet-name><url-pattern>/servlet/DisplayChart</url-pattern></servlet-mapping>mapping检查下,不知道你用的版本和工具包是什么
解决方案五:
该回复于2011-05-11 10:32:54被版主删除