[ 
https://issues.apache.org/jira/browse/WICKET-2051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Igor Vaynberg resolved WICKET-2051.
-----------------------------------

      Assignee: Igor Vaynberg  (was: Johan Compagner)
    Resolution: Cannot Reproduce

> OutOfMemoryError while serializing page
> ---------------------------------------
>
>                 Key: WICKET-2051
>                 URL: https://issues.apache.org/jira/browse/WICKET-2051
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.4-RC1
>            Reporter: Yosi
>            Assignee: Igor Vaynberg
>
> getting OutOfMemoryError while serializing page.
> * I have a page containing a ModalWindow showing  a Page.
> * When closing the modal I get the following exception (see below).
> * Objects.setObjectStreamFactory(new WicketObjectStreamFactory()) seem to fix 
> the problem.
> * (using SimpleSynchronousFilePageStore() instead of DiskPageStore also fixes 
> the problem).
> And also some questions:
> * why do we need WicketObjectStreamFactory?
> * is it ok to use it?
> * why isn't it the default?
> java.lang.OutOfMemoryError: Java heap space
>       at java.util.Arrays.copyOf(Arrays.java:2786)
>       at 
> java.io.ByteArrayOutputStream.toByteArray(ByteArrayOutputStream.java:133)
>       at 
> org.apache.wicket.util.lang.Objects.objectToByteArray(Objects.java:1107)
>       at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore$PageSerializer.getPageReplacementObject(AbstractPageStore.java:281)
>       at org.apache.wicket.Page.writeReplace(Page.java:1320)
>       at sun.reflect.GeneratedMethodAccessor186.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at 
> java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:1032)
>       at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1107)
>       at 
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>       at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>       at 
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>       at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>       at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
>       at 
> org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:119)
>       at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:322)
>       at 
> org.apache.wicket.util.lang.Objects.objectToByteArray(Objects.java:1097)
>       at 
> org.apache.wicket.protocol.http.pagestore.AbstractPageStore.serializePage(AbstractPageStore.java:199)
>       at 
> org.apache.wicket.protocol.http.pagestore.DiskPageStore.storePage(DiskPageStore.java:814)
>       at 
> org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.put(SecondLevelCacheSessionStore.java:327)
>       at org.apache.wicket.Session.requestDetached(Session.java:1390)
>       at org.apache.wicket.RequestCycle.detach(RequestCycle.java:1113)
>       at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1385)
>       at org.apache.wicket.RequestCycle.request(RequestCycle.java:498)
>       at 
> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:444)
>       at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1089)
>       at 
> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>       at 
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1089)
>       at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to