2013-04-05 5 views
0

Это мой .xhtmlprimefaces Linechart не видно

<div id="detailed_div_graph" align="center"> 
      <p:lineChart id="linear" value="#{ChartBean.linearModel}" legendPosition="e" 
       title="Medical Data" minY="0" maxY="10" style="height:300px"/> 
     </div> 

Это мой ChartBean код:

public class ChartBean implements Serializable { 

private CartesianChartModel linearModel; 

public ChartBean() { 
    createLinearModel(); 
} 

public CartesianChartModel getLinearModel() { 
    return linearModel; 
} 

private void createLinearModel() { 
    linearModel = new CartesianChartModel(); 

    LineChartSeries series1 = new LineChartSeries(); 
    series1.setLabel("BP"); 

    series1.set(1, 2); 
    series1.set(2, 1); 
    series1.set(3, 3); 
    series1.set(4, 6); 
    series1.set(5, 8); 

    linearModel.addSeries(series1); 
} 

} 

Что случилось с моим кодом?

ответ

0

Здесь вы предполагаете, что этот конструктор будет вызван.

public ChartBean() { 
    createLinearModel(); 
} 

Jsf имеет этапы, и вы должны учитывать их.

Если вы хотите, чтобы ваш метод createLinearModel() будет называться в первый раз после того, как боб первой инициализации, вы должны аннотировать его с @PostConstruct аннотацией

@PostConstruct 
private void createLinearModel(){ 
    ... 
}