How can Implenent a Pie Chart using jFreechart in jsp? [duplicate]

六月ゝ 毕业季﹏ 提交于 2019-12-25 05:25:27

问题


Possible Duplicate:
How can i display pie chart in jsp page?

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<%@ page import="java.awt.*"%>
<%@ page import="java.io.*"%>
<%@ page import="org.jfree.chart.*"%>
<%@ page import="org.jfree.chart.entity.*"%>
<%@ page import="org.jfree.data.general.*"%>

<%
    DefaultPieDataset pieDataset = new DefaultPieDataset();
    pieDataset.setValue("JavaWorld", new Integer(75));
    pieDataset.setValue("Other", new Integer(25));
    JFreeChart chart = ChartFactory.createPieChart("Sample Pie Chart",pieDataset,true,true,false);
%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Pie Chart</title>
</head>
<body>
    <IMG SRC="piechart.png" WIDTH="600" HEIGHT="400" BORDER="0"
        USEMAP="#chart">
</body>
</html>

for this i use 2 jar files

1.jfreechart-0.9.4.jar

2.jcommon-0.7.1.jar

but it throw an exception.

6 Jun, 2012 10:03:12 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 33 in the jsp file: /pages/pieChart.jsp
DefaultPieDataset cannot be resolved to a type
30:         out.println(e);
31: 
32:     } */
33:     DefaultPieDataset pieDataset = new DefaultPieDataset();
34:     pieDataset.setValue("JavaWorld", new Integer(75));
35:     pieDataset.setValue("Other", new Integer(25));
36:     JFreeChart chart = ChartFactory.createPieChart


An error occurred at line: 33 in the jsp file: /pages/pieChart.jsp
DefaultPieDataset cannot be resolved to a type
30:         out.println(e);
31: 
32:     } */
33:     DefaultPieDataset pieDataset = new DefaultPieDataset();
34:     pieDataset.setValue("JavaWorld", new Integer(75));
35:     pieDataset.setValue("Other", new Integer(25));
36:     JFreeChart chart = ChartFactory.createPieChart


Stacktrace:
    at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
    at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
    at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:356)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
    at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
    at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
    at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at com.saveworks.application.AdminAuthenticationFilter.doFilter(AdminAuthenticationFilter.java:74)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:662)

Please any one can help me??

Thanks in advance.


回答1:


Please check your DefaultPieDataset class is there while compiling.

`DefaultPieDataset` cannot be resolved to a type
30:         out.println(e);

when the JSP is compilet to servlet, it needs to resolve compile time errors.At that time, this class is not found.Check your jar files whether this class file is really present or not.




回答2:


1-what IDE you use

2-first you should try clean and build then run

3-make sure of the class path classpath errors

4-and you may just in case copy the jars to the Apachetomcat lib directory

5-if all is okay then make sure of you library jars it may be corrupted so redownload or its not included correctly or not at all ; make sure to include the jar with all its classes

i thought so then you should take alook at this these are specially for eclipse

link to jfreechart tutorial

look tutorial




回答3:


I prefer jqPlot. They support pie chart. See demo here.

This is free jQuery library that allow you to create interactive charts comparing to image generation.



来源:https://stackoverflow.com/questions/10908270/how-can-implenent-a-pie-chart-using-jfreechart-in-jsp

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!