所以我有一个创建饼图的视图。重复出现的代码看起来像这样。
function drawChart() {
var dataBest = new google.visualization.DataTable();
dataBest.addColumn('string', 'Name');
dataBest.addColumn('number', 'Number');
dataBest.addRows([
<ui:repeat value="#{dashboardController.bestSelling()}" var="sale">
[ '#{sale[0].prodId.prodName}', #{sale[1]}],
</ui:repeat >
]);
var options = {'title':'Best Sold Products', 'width':400,'height':300};
var chart = new google.visualization.PieChart(document.getElementById('test'));
chart.draw(dataBest, options);
}
在我的控制器DashboardController中,我有:
public String bestSelling() {
List<Sales> bestSelling = saleService.getBestSellingProduct(country,gender,status,income);
return new Gson().toJson(bestSelling);
}
但是,当我进入我的页面时,我有以下错误:
/faces/all.xhtml @ 22,83 value =&#34;#{dashboardController.bestSelling}&#34;:班级&#39; com。 。 .managedbean.DashboardController&#39;没有该物业&#39; bestSelling&#39;。
我不明白我在那里做错了什么。
答案 0 :(得分:0)
您没有运行您认为正在运行的代码。查看错误消息:
/faces/all.xhtml @ 22,83 value =“#{dashboardController.bestSelling}
它提到没有括号的方法。所以,你显然已经在以后添加了它,但是webapp项目没有被正确保存/清理/重建/重新部署/重新启动。
无关,这种方法还有很多错误(尝试使用<ui:repeat>
迭代Java String
作为#1思维错误),但是一旦解决了当前的问题,你就会体验到这一点。提示:JSF是一个HTML代码生成器,JS是该HTML的一部分。