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
The reason for doing the work is to create something useful that helps people. Please click the ads if my articles are useful for you. Definitely, that's not enough. My target is working at some great organizations, such that one day, all the people with internet access can benefit from the service I contributed.
Comments
Post a Comment