2012-06-06 4 views
0

Можно создать дубликат:
How can i display pie chart in jsp page?Как можно сжимать круговую диаграмму с помощью jFreechart в jsp?

<%@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> 

для этого я использую 2 опарника

1.jfreechart-0.9.4.jar

2.jcommon -0.7.1.jar

но это исключение.

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) 

Пожалуйста, любой может мне помочь ??

Заранее спасибо.

+0

Какой идеал вы используете – shareef

+0

Я использую Eclipse .. – anoop

+0

Я подумал, что тогда вы должны взять alook на этом [look eclipse set classpath tutorial] (http://www.vogella.com/articles/Eclipse/article. html # classpath) [ссылка на jfreechart tutorial] (http://www.vogella.com/articles/JFreeChart/article.html) – shareef

ответ

0

Пожалуйста, проверьте свой класс DefaultPieDatase t при компиляции.

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

когда JSP является compilet в сервлете, он должен решить во время компиляции errors.At того времени, этот класс не found.Check ваших файлов фляга, действительно ли присутствует этот класс файл или нет.

+0

В моем проекте нет класса DefaultPieDataset. Используйте только 2 файла jar, я думаю, что это уже не работает в jar-файлах. – anoop

+0

проверить, присутствует ли этот файл класса в файлах jar. Если он отсутствует в файлах jar, во время компиляции компилятор jsp может не разрешить зависимости. Один быстрый способ, который вы можете сделать, - это в вашей среде IDE, вы можете проверить для этого. – UVM

0

1-то, что IDE вы используете

2-первых, вы должны попробовать чистый и построить затем запустить

3-убедитесь пути класса classpath errors

4-и вы можете только в случае, если скопируйте банки в каталог Apachetomcat lib

5-если все в порядке, убедитесь, что у вас банки библиотеки, это может быть повреждено, так что перезагрузка или ее включение не включено или нет; не забудьте включить в банку со всеми классами

я думал так, то вы должны принять в этом советую сначала это специально для затмения

link to jfreechart tutorial

look tutorial

0

Я предпочитаю jqPlot. Они поддерживают круговую диаграмму. См. Демо here.

Это бесплатная библиотека jQuery, которая позволяет создавать интерактивные диаграммы по сравнению с генерацией изображений.

Смежные вопросы