JasperPrint jasperPrint = JasperFillManager.fillReport(report, params, dataSource);
if (viewer != null) {
viewer.changeReport(jasperPrint);
} else {
viewer = new ReportViewer(jasperPrint);
add(viewer,BorderLayout.CENTER);
}
// add new listener
if (cache != null) {
cache.addNodeModelListener(this);