Hi, it depends on what you have in your webapp (WEB-INF/lib for instance). TomEE does much more than Tomcat and then it needs more memory.
There is especially the scanning process which can be memory consuming. If that is a reason, you can easily provide an additional file containing exclude/include files to scan. So you can speed up the boot time and decrease the overall memory consumption. If you have a sample webapp, we can give it a try. JLouis 2013/7/31 [email protected] <[email protected]> > Hi > > I just wanted to inform you that when increasing the heap size within > TomEE, > I seem to get OutOfMemoryError. When doing the same on Tomcat, it works. > > I am trying to use OpenAM on TomEE. The requirement for OpenAM to work is > 1GB heap space and 256MB permanent space. I edited the catalina.sh file so > it contains: > > CATALINA_OPTS="-Xmx1024m -XX:MaxPermSize=256m" > > When I startup TomEE, I receive the following Exception: > > [Click] [error] handleException: java.lang.RuntimeException: Error occurred > invo > king public method: public boolean > com.sun.identity.config.DefaultSummary.create > DefaultConfig() > at org.apache.click.util.ClickUtils.invokeMethod(ClickUtils.java:3335) > at org.apache.click.util.ClickUtils.invokeListener(ClickUtils.java:2088) > > at org.apache.click.control.AbstractControl$1.onAction(AbstractControl.j > ava:228) > at org.apache.click.ActionEventDispatcher.fireActionEvent(ActionEventDis > patcher.java:259) > at org.apache.click.ActionEventDispatcher.fireActionEvents(ActionEventDi > spatcher.java:236) > at org.apache.click.ActionEventDispatcher.fireActionEvents(ActionEventDi > spatcher.java:180) > at org.apache.click.ClickServlet.performOnProcess(ClickServlet.java:746) > > at org.apache.click.ClickServlet.processAjaxPageEvents(ClickServlet.java > :1860) > at org.apache.click.ClickServlet.processPage(ClickServlet.java:559) > at org.apache.click.ClickServlet.handleRequest(ClickServlet.java:383) > at org.apache.click.ClickServlet.doGet(ClickServlet.java:276) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl > icationFilterChain.java:305) > at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF > ilterChain.java:210) > at org.forgerock.openam.validation.ResponseValidationFilter.doFilter(Res > ponseValidationFilter.java:44) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl > icationFilterChain.java:243) > at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF > ilterChain.java:210) > at com.sun.identity.setup.AMSetupFilter.doFilter(AMSetupFilter.java:99) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl > icationFilterChain.java:243) > at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF > ilterChain.java:210) > at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV > alve.java:222) > at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV > alve.java:123) > at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45) > at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica > torBase.java:472) > at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j > ava:171) > at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j > ava:99) > at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java: > 947) > at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal > ve.java:118) > at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav > a:408) > at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp > 11Processor.java:1009) > at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process( > AbstractProtocol.java:589) > at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoin > t.java:312) > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec > utor.java:886) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor > .java:908) > at java.lang.Thread.run(Thread.java:662) > Caused by: java.lang.OutOfMemoryError: PermGen space > at java.lang.ClassLoader.findBootstrapClass(Native Method) > at java.lang.ClassLoader.findBootstrapClassOrNull(ClassLoader.java:926) > at java.lang.ClassLoader.loadClass(ClassLoader.java:297) > at java.lang.ClassLoader.loadClass(ClassLoader.java:295) > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) > at java.lang.ClassLoader.loadClass(ClassLoader.java:295) > at java.lang.ClassLoader.loadClass(ClassLoader.java:247) > at org.apache.tomee.catalina.LazyStopWebappClassLoader.loadClass(LazySto > pWebappClassLoader.java:91) > at org.opends.server.tools.InstallDS.execute(InstallDS.java:558) > at org.opends.server.tools.InstallDS.mainCLI(InstallDS.java:335) > at com.sun.identity.setup.EmbeddedOpenDS.runOpenDSSetup(EmbeddedOpenDS.j > ava:535) > at com.sun.identity.setup.EmbeddedOpenDS.setupOpenDS(EmbeddedOpenDS.java > :472) > at com.sun.identity.setup.EmbeddedOpenDS.setup(EmbeddedOpenDS.java:325) > at com.sun.identity.setup.AMSetupServlet.setupEmbeddedDS(AMSetupServlet. > java:821) > at com.sun.identity.setup.AMSetupServlet.setupSMDatastore(AMSetupServlet > .java:877) > at com.sun.identity.setup.AMSetupServlet.configure(AMSetupServlet.java:9 > 49) > at com.sun.identity.setup.AMSetupServlet.processRequest(AMSetupServlet.j > ava:621) > at com.sun.identity.config.DefaultSummary.createDefaultConfig(DefaultSum > mary.java:131) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.apache.click.util.ClickUtils.invokeMethod(ClickUtils.java:3317) > at org.apache.click.util.ClickUtils.invokeListener(ClickUtils.java:2088) > > at org.apache.click.control.AbstractControl$1.onAction(AbstractControl.j > ava:228) > at org.apache.click.ActionEventDispatcher.fireActionEvent(ActionEventDis > patcher.java:259) > at org.apache.click.ActionEventDispatcher.fireActionEvents(ActionEventDi > spatcher.java:236) > at org.apache.click.ActionEventDispatcher.fireActionEvents(ActionEventDi > spatcher.java:180) > at org.apache.click.ClickServlet.performOnProcess(ClickServlet.java:746) > > at org.apache.click.ClickServlet.processAjaxPageEvents(ClickServlet.java > :1860) > at org.apache.click.ClickServlet.processPage(ClickServlet.java:559) > at org.apache.click.ClickServlet.handleRequest(ClickServlet.java:383) > > When doing the same in Tomcat, it works with no Exceptions. > > > > -- > View this message in context: > http://openejb.979440.n4.nabble.com/TomEE-Out-Of-Memory-Error-tp4664435.html > Sent from the OpenEJB User mailing list archive at Nabble.com. > -- Jean-Louis
