对于多个报告,我有一个调用许多Web服务的scriptlet。调用是在afterReportInit()
方法下完成的,以填充几个HashMaps,而HashMaps又用于报告中。问题是Web服务调用是在每个报告生成时执行的,这导致性能非常低。
我正在寻找一种解决方法,以便为所有报告调用一次Web服务。
请注意,报告部署在JasperServer
上答案 0 :(得分:1)
我在调查这件事。到目前为止,我发现JasperReports有一个自定义类加载器,JRClassLoader需要扩展:
我个人不打扰类加载机制,如果可能的话,尝试使用memcache缓存Web服务调用的结果......根据你的设置,apache也可以这样做。