从一个servlet,我将转发请求到一个呈现FusionChart的JSP页面。 但我在加载图表时遇到问题。 JSP文件未检测到JavaScript文件。文件夹结构是:JSP未检测到javascript文件
axis
|
WebContent
|
WEB-INF
|
classes
|_ com
|_FusionCharts.js
|_MyChartJsp.jsp
|_Line.swf
而JSP代码:
<html>
<head>
<script language="text/javascript" src="/WEB-INF/classes/FusionCharts.js"></script>
</head>
<body bgcolor="#ffffff">
<div id="chartdiv" align="left">The chart will appear within
this DIV. This text will be replaced by the chart.</div>
<script type="text/javascript">
var foo = //value fetched from DAO
var myChart = new FusionCharts("/WEB-INF/classes/Line.swf",
"myChartId", "1000", "500");
myChart
.setDataXML("<graph caption='aCaption' xAxisName='xAxis' yAxisName='yAxis' showNames='1' decimalPrecision='0' formatNumberScale='0'>"+foo+"</graph>");
myChart.render("chartdiv");
</script>
</body>
</html>
servlet代码将所述请求转发:
final RequestDispatcher requestDispatcher = request.getRequestDispatcher("/WEB-INF/classes/MyChartJsp.jsp");
requestDispatcher.forward(request, response);
的要求越来越转发到JSP。但没有得到显示在图表,因为它无法找出FusionCharts
是在该行
var myChart = new FusionCharts("/WEB-INF/classes/Line.swf",
"myChartId", "1000", "500");
我试图
src="/FusionCharts.js"
src="FusionCharts.js"
,但没有运气。
它与请求被转发有关吗?
还应该注意的是Line.swf文件也不可访问。像JavaScript文件一样,它应该从WEB-INF文件夹下移出。 – 2010-09-30 13:51:16
我已将.js文件移出WEB-INF。但仍然没有运气。当我将JSP文件移出WEB-INF时,它确实有效。所有三个(.js,.jsp,.swf)文件我放在“WebContent/FusionCharts /”,它的工作。如果我将JSP文件放在WEB-INF之外,可以吗? – HanuAthena 2010-09-30 14:51:49
@HanuAthena查看更新 – Bozho 2010-09-30 15:01:49