我在 JBoss 服务器上有一个主应用程序,该服务器内部独立模块使用 JasperReports 。
我需要为报告使用字体扩展名。在经历了很多问题后,我确实设法让它们发挥作用。
ClassLoader cl = new URLClassLoader( new URL[] {new URL("file:///app/jasper-fonts.jar")} );
Thread.currentThread().setContextClassLoader(cl);
JasperPrint print = JasperFillManager.fillReport(jasperReport, params);
我的报告使用扩展程序中的字体。一切似乎都很好
但是......
我有1.200.000报告要做。由于字体扩展,我在/ tmp上的服务器上获得了一些tmp文件(+ ~JF *****。tmp)。 1个文件有700Kb,700Kb * 1.2mil =崩溃,所以我无法保留它们。
有什么解决方案可以不保存这些?或者在生成后删除它们?
答案 0 :(得分:0)
我建议在报告执行中缓存和重用类加载器。除了创建一组字体临时文件外,这对性能也有帮助。