问题描述:下载电子报表,当电子报表过大发生"Root cause of ServletException java.lang.OutOfMemoryError" 问题状态:已解决 解决方法:调整bea/weblogic/common中CommEnv中参数 :sun if "%PRODUCTION_MODE%" == "true" goto sun_prod_mode set JAVA_VM=-client set MEM_ARGS=-Xms256m -Xmx512m -XX:MaxPermSize=256m set JAVA_OPTIONS=%JAVA_OPTIONS% -Xverify:none goto continue :sun_prod_mode set JAVA_VM=-server set MEM_ARGS=-Xms256m -Xmx512m -XX:MaxPermSize=256m goto continue 即解决此问题 reference: MaxPermSize: The permanent space is memory allocated outside the regular heap (i.e. in addition to the -Xmx setting), so it is important to ensure there is enough physical RAM on the machine. The permanent space is used to primarily store classes and objects created for reflection support (methods etc.). If you have a large number of classes in a Java application, an OOM can occur if the PermSize is too small. From one of your previous posts, you seem to have 8 applications, so yes, setting the PermSize and/or MaxPermSize could help. Also, 256MB sounds small for a server with 8 applications. The OOM could simply indicate that your heap is too small. Hope this helps, Arunabh |