平台运行过程中,出现如下情况:Java heap space
- 2011-4-22 16:52:39 org.apache.catalina.core.ApplicationDispatcher invoke
- 严重: Servlet.service() for servlet jsp threw exception
- java.lang.OutOfMemoryError: Java heap space
- 16:52:39,828 ERROR DispatcherUtils:245 - Could not execute action
- javax.servlet.ServletException: java.lang.OutOfMemoryError: Java heap space
- at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:274)
- at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
- at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
- at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
- at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
- at com.opensymphony.webwork.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:114)
- at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
- at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:100)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:113)
- at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:233)
- at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
- at cn.myapps.base.web.filter.OBPMFilterDispatcher.doFilter(OBPMFilterDispatcher.java:43)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at cn.myapps.base.web.filter.AjaxMultiLanguageFilter.doFilter(AjaxMultiLanguageFilter.java:40)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at cn.myapps.base.web.filter.PersistenceFilter.doFilter(PersistenceFilter.java:30)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at cn.myapps.base.web.filter.SecurityFilter.doFilter(SecurityFilter.java:125)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
- at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
- at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
- at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
- at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
- at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
- at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
- at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
- at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
- at java.lang.Thread.run(Thread.java:619)
- Caused by: java.lang.OutOfMemoryError: Java heap space
- 16:52:39,828 ERROR OBPMFilterDispatcher:48 - URL: /vos2_4/core/role/list.action
- javax.servlet.ServletException: Could not execute action
- at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:246)
- at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:198)
- at cn.myapps.base.web.filter.OBPMFilterDispatcher.doFilter(OBPMFilterDispatcher.java:43)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at cn.myapps.base.web.filter.AjaxMultiLanguageFilter.doFilter(AjaxMultiLanguageFilter.java:40)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at cn.myapps.base.web.filter.PersistenceFilter.doFilter(PersistenceFilter.java:30)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at cn.myapps.base.web.filter.SecurityFilter.doFilter(SecurityFilter.java:125)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
- at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
- at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
- at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
- at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
- at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
- at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
- at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
- at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
- at java.lang.Thread.run(Thread.java:619)
- Caused by: javax.servlet.ServletException: java.lang.OutOfMemoryError: Java heap space
- at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:274)
- at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
- at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
- at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
- at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
- at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
- at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
- at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
- at com.opensymphony.webwork.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:114)
- at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:101)
- at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:312)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:207)
- at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
- at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:189)
- ...
- Caused by: java.lang.OutOfMemoryError: Java heap space
解决方案:
- windows 下 tomcat 虚拟内存配置
- 在tomcat的bin目录下,找到catalina.bat 文件,打开,在最上面添加这样一句:
- set JAVA_OPTS=-Xms256m -Xmx512m
- Eclipse中设置tomcat 虚拟内存配置
- Windows --> Preferences-->MyEclipse--->Tomcat-->Tomcate x.x --> JDK 中
- Optional java vm arguments中加入 -Xms256m -Xmx512m
- 注意:不同方式的tomcat启动,其虚拟内存取决于当前的配置,比如 tomcat中设置了,而Myeclipse中未设置,则在myeclipse启动tomcat 其虚拟内存 还是未改变,仍然为默认值64M
- linux 下tomcat 虚拟内存配置
- 在tomcat的bin目录下,找到catalina.bat 文件,打开,在最上面添加这样一句:
- JAVA_OPTS='-Xms256m -Xmx512m'
- 表示初始化内存为256MB,可以使用的最大内存为512MB。
参考网址:
http://yushan.iteye.com/blog/345456
测试无效的方法:
解决方法:手动设置Heap size
1.如果是unix/linux操作系统:
修改TOMCAT_HOME/bin/catalina.sh
在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行: