regrouper plusieurs pages pdf de différentes requêtes
Bonjour,
Je souhaite regrouper plusieurs pages pdf de différentes requêtes.
En effet, j'ai une requête QUERY_AAA que je dois exécuter plusieurs fois de suite en fonction d'un paramètre. A chaque fois que j'appelle celle-ci doit correpondre normalement une page PDF (c'est toujours la même. Celle-ci est réalisée avec IReport).
Je voudrais avoir toutes mes pages au sein d'un même doc PDF et ne sais pas comment faire. Comment faut-il adapter le code ci-dessous ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| JasperDesign jD;
JasperReport jR;
JasperPrint jP;
ByteArrayOutputStream OS = new ByteArrayOutputStream();
jD = JRXmlLoader.load(getClass().getResourceAsStream("monFichierIREPORT.jrxml"));
jR = JasperCompileManager.compileReport(jD);
try {
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup(rb.getString("dsJNDIName"));
conn = ds.getConnection();
QUERY_AAA = " ...";
PreparedStatement ps = conn.prepareStatement(QUERY_AAA);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
if (rs.getString(1) != null)
HM.put("personne", (Object) rs.getString(1));
...
}
rs.close();
ps.close();
} catch (Exception ex) {
log.error(ex);
} finally {
try {
conn.close();
} catch (SQLException e) {
log.error(e.toString());
}
}
// Create JasperPrint using fillReport() method
jP = JasperFillManager.fillReport(jR, HM, new JREmptyDataSource());
JasperExportManager.exportReportToPdfStream(jP, OS);
pdfBean.setPagePdf(OS);
if(pdfBean.getPagePdf() != null)
{
response.setContentType("application/pdf");
byte[]b = pdfBean.getPagePdf().toByteArray();
response.getOutputStream().write(b);
} |
Pour info, la methode setPagePdf de pdfBean est :
Code:
1 2 3 4
| public void setPagePdf(ByteArrayOutputStream pagepdf)
{
this.pagePdf = pagepdf;
} |
Merci d'avance.