If you cannot make your application object serializable - which is normal - you need to use my other advice regarding a detachable model to load the ExternalApplicationBean
Marieke Vandamme wrote: > > I'm little confused now. How can I make java.util.RandomAccessSubList > Serializable? > I'm not using that class directly. > My compoundPropertyModel hold ExternalApplicationBean which contains a > HashMap<String,List>. > > How do you turn off the serializable checker? > Or how can I use another list type? (I'm using List in my HashMap, because > I thought List and HashMap are Serializable). > > > Nino.Martinez wrote: >> >> Seems that your random acesslist is not serializable... :) Either turn >> of the serializable checker or use another list type? Or am I missing >> something? >> >> [class=java.util.RandomAccessSubList] <----- field that is not >> serializable >> >> >> Marieke Vandamme wrote: >>> Hello, >>> >>> I'm using a rather complex CompoundPropertyModel on my Form. That Form >>> contains multiple Panels that also use the same CompoundPropertyModel. >>> So I >>> can't post any source code, but I hope my stacktrace will be enough. >>> >>> I also found a rather simular problem on the jira site, but not for >>> wicket >>> but MyFaces. >>> http://issues.apache.org/jira/browse/TRINIDAD-27 >>> >>> Should I post this on the jira for wicket or am I doing something wrong? >>> Thanks ! >>> >>> >>> ERROR - Error serializing object class >>> com.tvh.website.application.external.ApplicationPage [object=[Page class >>> = >>> com.tvh.website.application.external.ApplicationPage, id = 0, version = >>> 0, >>> ajax = 2]] >>> org.apache.wicket.util.io.SerializableChecker$WicketNotSerializableException: >>> Unable to serialize class: java.util.RandomAccessSubList >>> Field hierarchy is: >>> 0 [class=com.tvh.website.application.external.ApplicationPage, path=0] >>> private java.lang.Object org.apache.wicket.MarkupContainer.children >>> [class=[Ljava.lang.Object;] >>> private java.lang.Object >>> org.apache.wicket.MarkupContainer.children[2] >>> [class=org.apache.wicket.markup.html.form.SubmitLink, >>> path=0:btnSubmitApplicant] >>> private org.apache.wicket.markup.html.form.Form >>> org.apache.wicket.markup.html.form.AbstractSubmitLink.form >>> [class=com.tvh.website.application.ApplicantPanel$ApplicantForm, >>> path=0:pnlApplicant:webform] >>> java.lang.Object org.apache.wicket.Component.data >>> [class=org.apache.wicket.model.CompoundPropertyModel] >>> private java.lang.Object >>> org.apache.wicket.model.CompoundPropertyModel.target >>> [class=com.tvh.website.application.external.ApplicationPage$ExternalApplicationBean] >>> private java.util.HashMap >>> com.tvh.website.application.external.ApplicationPage$ExternalApplicationBean.extras >>> [class=java.util.HashMap] >>> private java.util.HashMap >>> com.tvh.website.application.external.ApplicationPage$ExternalApplicationBean.extras[write:1][write:2] >>> [class=java.util.RandomAccessSubList] <----- field that is not >>> serializable >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:349) >>> at >>> org.apache.wicket.util.io.SerializableChecker.access$500(SerializableChecker.java:63) >>> at >>> org.apache.wicket.util.io.SerializableChecker$1InterceptingObjectOutputStream.replaceObject(SerializableChecker.java:497) >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1116) >>> at >>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326) >>> at java.util.HashMap.writeObject(HashMap.java:1001) >>> at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >>> at java.lang.reflect.Method.invoke(Method.java:597) >>> at >>> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945) >>> at >>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461) >>> 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.SerializableChecker.check(SerializableChecker.java:504) >>> at >>> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:618) >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:541) >>> at >>> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:618) >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:541) >>> at >>> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:618) >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:541) >>> at >>> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:618) >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:541) >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:395) >>> at >>> org.apache.wicket.util.io.SerializableChecker.checkFields(SerializableChecker.java:618) >>> at >>> org.apache.wicket.util.io.SerializableChecker.check(SerializableChecker.java:541) >>> at >>> org.apache.wicket.util.io.SerializableChecker.writeObjectOverride(SerializableChecker.java:687) >>> at >>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:322) >>> at >>> org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:127) >>> 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:200) >>> 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:1391) >>> at org.apache.wicket.RequestCycle.detach(RequestCycle.java:1094) >>> at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1365) >>> at org.apache.wicket.RequestCycle.request(RequestCycle.java:497) >>> at >>> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:387) >>> at >>> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:199) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) >>> at >>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) >>> at >>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) >>> at >>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >>> at >>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) >>> at >>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) >>> at >>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) >>> at >>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) >>> at >>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) >>> at >>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) >>> at >>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) >>> at >>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) >>> at java.lang.Thread.run(Thread.java:619) >>> Caused by: java.io.NotSerializableException: >>> java.util.RandomAccessSubList >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156) >>> at >>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326) >>> at java.util.HashMap.writeObject(HashMap.java:1001) >>> at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >>> at java.lang.reflect.Method.invoke(Method.java:597) >>> at >>> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945) >>> at >>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461) >>> at >>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392) >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150) >>> 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.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.defaultWriteFields(ObjectOutputStream.java:1509) >>> at >>> java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:416) >>> at org.apache.wicket.Component.writeObject(Component.java:4339) >>> at sun.reflect.GeneratedMethodAccessor78.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >>> at java.lang.reflect.Method.invoke(Method.java:597) >>> at >>> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945) >>> at >>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461) >>> at >>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392) >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150) >>> 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.writeArray(ObjectOutputStream.java:1338) >>> at >>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146) >>> 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) >>> ... 25 more >>> >>> >> >> -- >> -Wicket for love >> >> Nino Martinez Wael >> Java Specialist @ Jayway DK >> http://www.jayway.dk >> +45 2936 7684 >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> > > -- View this message in context: http://www.nabble.com/NotSerializableException%3A-java.util.RandomAccessSubList-tp19083666p19084183.html Sent from the Wicket - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
