Попробуйте, надеюсь, это поможет.
Создайте bean-компонент для хранения возвращенных данных из спящего режима
Скажите, например, MyBean.java
public class MyBean implements Serializable
{
private Integer id;
private String fname;
private String lname;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public String getLname() {
return lname;
}
public void setLname(String lname) {
this.lname = lname;
}
}
Теперь используйте MyBean для хранения данных и используйте его для заполнения отчета следующим образом
List<MyBean> listdata = createsqlquery(query).list;
JasperDesign jasperDesign = JasperManager.loadXmlDesign(reportStream);
JasperReport jasperReport = JasperManager.compileReport(jasperDesign);
JRBeanCollectionDataSource ds = ;//your list here
JasperPrint jasperPrint = JasperManager.fillReport(jasperReport,parameters,new JRBeanCollectionDataSource(listdata));
//You can export generated report as follows
JasperExportManager.exportReportToPdfFile(jasperPrint,pathToExport);
Примечание: Вам потребуется сопоставление для MyBean.java для спящего режима.