/ / Rôzne správy získajú rovnaký obraz v generovaných správach - java, html, jasper-reports, jasperserver

Rôzne prehľady majú rovnaký grafový obrázok vo vygenerovaných prehľadoch - java, html, jasper-reports, jasperserver

Vytváram správy v jave pomocou JasperReports. Mám veci nastavené tak, že po kliknutí na odkaz na položku sa vygeneruje prehľad založený na tejto položke spolu s obrázkom grafu. Problém je, že po vygenerovaní prvej správy budú všetky nasledujúce generované správy používať rovnaký obrázok ako prvá správa. Chcem, aby každý vygenerovaný prehľad použil vlastný obrázok grafu. Nie ste si istí, čo robím zle.

POZNÁMKA: Viem, že tieto metódy sú zastarané. Predtým, ako sa pokúsim prejsť na nové metódy (s ktorými by som tiež mohol pomôcť, ale keď príde čas), budem musieť urobiť veci na obrázkoch.

  else if (export_format != null && export_format.equalsIgnoreCase("HTML")) {
jasperprint = JasperFillManager.fillReport(inFileStream, map, conn);
JRHtmlExporter exporter = new JRHtmlExporter();
HashMap imagesMap = new HashMap();
request.getSession().setAttribute("IMAGES_MAP", imagesMap);
request.getSession().setAttribute(ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperprint);

exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperprint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, response.getOutputStream());
exporter.setParameter(JRHtmlExporterParameter.HTML_HEADER, "");
exporter.setParameter(JRHtmlExporterParameter.HTML_FOOTER, "");
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE);
exporter.setParameter(JRHtmlExporterParameter.IMAGES_MAP, imagesMap);
exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "jasper/images?image=");
exporter.exportReport();
}

odpovede:

1 pre odpoveď č. 1

Pravdepodobným dôvodom, pre ktorý vidíte prvý graf v nasledujúcich správach, je to, že prehliadač ukladá obrázok do vyrovnávacej pamäte na obrázky jasper / images? Image = ...

Jedným jednoduchým spôsobom, ako sa tomu vyhnúť, je pridať náhodný parameter do adries URL obrázkov:

  exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "jasper/images?random=" + java.util.UUID.randomUUID() + "&image=");