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

Reply via email to