正如标题所说,即使图像保存后,我也无法在JSP页面上显示3D饼图。我尝试了绝对路径和相对路径,但它仍然不起作用。有人可以帮忙解决这个问题?
这是源代码:
AnalyzeUserClient.jsp(Java代码)
DefaultPieDataset pieDataset = new DefaultPieDataset();
BufferedReader bReader =new BufferedReader(new FileReader("C:/Users/L31207/Desktop/eclipse-jee-juno-win32/eclipse/user.txt"));
String s;
while ((s=bReader.readLine())!=null){
String datavalue [] = s.split("\t");
String category = datavalue[0];
String value = datavalue [1];
pieDataset.setValue(category, Double.parseDouble(value));
}
bReader.close();
JFreeChart chart = ChartFactory.createPieChart3D(
"Percentage of Each Category for User", pieDataset, true, true, true);
PiePlot3D p = (PiePlot3D) chart.getPlot();
p.setLegendLabelGenerator(new StandardPieSectionLabelGenerator("{0}: {2}"));
p.setForegroundAlpha(0.5f);
p.setBackgroundAlpha(0.2f);
chart.setBackgroundPaint(Color.white);
chart.setAntiAlias(true);
chart.setBorderVisible(false);
chart.setTextAntiAlias(true);
try {
ChartUtilities.saveChartAsPNG(new File("C:/Users/L31207/Desktop/eclipse-jee-juno-win32/eclipse/AnalyzeUser.png"), chart, 800, 600);
} catch (IOException e) {
e.printStackTrace();
System.err.println("Problem occurred creating chart.");
}
AnalyzeUserClient.jsp(HTML code)
<img src="C:/Users/L31207/Desktop/eclipse-jee-juno-win32/eclipse/AnalyzeUser.png" height="500px" width="500px" usemap="#chart">
答案 0 :(得分:1)
<img src="..."/>
需要引用一个资源,即客户端(未与服务器在同一台计算机上运行的浏览器)可以访问该资源。 href
指向C:
驱动器上的文件的情况并非如此。您需要提供对该文件中存储的图像的 HTTP 访问权限。