我正在使用Primefaces 5.3版来显示一个Chart组件,该组件使用poll
组件每n秒更新一次,由用户指定。
这个组件存在很大问题。起初,一切正常,图表和应用程序运行顺畅。过了一会儿,我的应用程序开始越来越慢,直到它完全无法使用。
我设法追查问题的根源。我认为每次图表更新时,它都不会被销毁,但是正在创建一个新的图表。
我在下面制作了远程命令并通过javascript 2000次调用它:
<p:remoteCommand name="updateChart" update="centerForm:dataChart" />
完成后,应用程序变得非常缓慢。这没有显示任何类型的数据,只是调用此方法并更新图表。我想问题就在这里,但我无法找到解决方案。
这是我的getter方法,每次更新图表时都会调用它:
public LineChartModel getLineModel()
{
return this.lineModel;
}
我甚至尝试调用这个javascript方法,当图表更新时,但没有运气:
var plot;
function renderGraph() {
if (plot) {
plot.destroy();
}
plot = PF('dataChart').plot;
plot.replot();
} 我发现只有这个问题与此相关,但没有运气here
有什么想法可以解决这个问题? 感谢您抽出宝贵时间阅读并帮助我。