webtier@glassfish.java.net

OutOfMemoryError, mojarra beta1

From: <webtier_at_javadesktop.org>
Date: Tue, 14 Jul 2009 05:16:49 PDT

Hi

I have a huge datatable, with around 1000+ compononents inside. I generate these components form code. not from markup. In markup, i have only an empty datatable tag, wiht the binding attribute filled.

My managed bean is session scoped.

On the first request, everything is smooth, the page loads under a second. Then i make post by invoking a valuechangelistener (with submit()), and then the second request is twice as slower as the first one. It goes on an on, and around at the fifth request i get this:

java.lang.OutOfMemoryError: Java heap space
        at java.lang.Object.clone(Native Method)
        at java.util.Arrays.sort(Arrays.java:1078)
        at java.util.Collections.sort(Collections.java:117)
        at com.sun.faces.renderkit.RenderKitUtils.renderPassThruAttributesOptimized(RenderKitUtils.java:556)
        at com.sun.faces.renderkit.RenderKitUtils.renderPassThruAttributes(RenderKitUtils.java:334)
        at com.sun.faces.renderkit.html_basic.TextRenderer.getEndTextToRender(TextRenderer.java:126)
        at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:170)
        at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:874)
        at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:293)
        at com.sun.faces.renderkit.html_basic.TableRenderer.renderRow(TableRenderer.java:367)
        at com.sun.faces.renderkit.html_basic.TableRenderer.encodeChildren(TableRenderer.java:153)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:844)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1609)
        at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:844)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1609)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1612)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1612)
        at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:271)
        at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:126)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:124)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:103)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:311)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.sun.faces.scripting.GroovySupportFilter.doFilter(GroovySupportFilter.java:42)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at once.light.servlet.OnceLightServletFilter.doFilter(OnceLightServletFilter.java:154)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

I removed all my code from my valuchange listener, so this must be jsf.

Thanks for help.
[Message sent by forum member 'gabox01' (gabox01)]

http://forums.java.net/jive/thread.jspa?messageID=355572