I still can not find the solution. So I summary all the things and tell my boss about it. If any one knows the solution, please let me know. Symptom: 1. The JVM became Out of memory when creating big consumption report 2. Those JRTemplateElement-instances is still there occupied even if I logged out the system Reason: 1. There is a large number of JRTemplateElement-instances cached in the memory 2. The clearobjects() method in ReportThread class has not been triggered when logging out Action I tried: About the Virtualizer: 1. Replacing the JRSwapFileVirtualizer with JRFileVirtualizer 2. Not use any FileVirtualizer for cache the report in the hard disk Result: The japserreport still creating the a large number of JRTemplateElement-instances in the memory About the work around below, I tried: item 3(in below work around list) – result: it helps to reduce the size of the JRTemplateElement Object
Comments
Post a Comment