JasperPrint print = null;
try {
InputStream is = TestTable.class.getResourceAsStream("report1.jasper");
JasperReport jasperReport = (JasperReport) JRLoader.loadObject(is);
HashMap<String, Object> parameters1 = new HashMap<String, Object>();
List<TestJavaBean> list = new ArrayList<TestJavaBean>();
for(int i = 0; i < 10; i++){
TestJavaBean bean = new TestJavaBean();
bean.setGender(""+i);bean.setName("test"+i);
bean.setAge(i+18+"");
list.add(bean);
}
// chatListsub.add(chat10); chatListsub.add(chat11); chatListsub.add(chat12); chatListsub.add(chats1);
// chatListsub.add(chat20); chatListsub.add(chat21); chatListsub.add(chat22); chatListsub.add(chats2);
//parameters1.put("SUBREPORT_DIR", "/home/developer/apps/iReport-2.0.0/");
//parameters1.put("MyDatasource", new JRBeanCollectionDataSource(chatListsub));
print = JasperFillManager.fillReport(jasperReport, parameters1,new JRBeanCollectionDataSource(list));
PrintWriter out = response.getWriter();
//JasperViewer.viewReport(print, false);
JRHtmlExporter exporter = new JRHtmlExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
exporter.setParameter(JRExporterParameter.OUTPUT_WRITER, out);
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE);
exporter.exportReport();
out.flush();
} catch (Exception ex) {
ex.printStackTrace();
}