Nope, my Session is a standalone class. After debugging a bit, I mistook where the exception was occuring. It was actually upon serializing the Main page (prior to my click). it looks like HibernateObjectModel is the culprit. I'm hoping that Nathan is reading along to comment...
Here is my theory for why it worked one way, but not the other: The AuthDataSession keeps an IModel reference to the logged in user. When I need to log in the IModel reference would have been null, therefore it could safely serialize the page. In the auto-login scenario, the IModel ref would have been populated prior to rendering the Main page and therefore throw the NotSerializableException because there is some odd connection between the HibernateObjectModel and the Application object. What I don't understand is why, on subsequent attempts after the failure, it seemed to work. Any thoughts? igor.vaynberg wrote: > > make sure your session class is not an inner non-static class of the > applicaiton because then they are tied. you might also want to try the > databinder mailing list > > -igor > > > On 12/7/06, ChuckDeal <[EMAIL PROTECTED]> wrote: >> >> >> I am not directly doing anything with StringResponse, it is just the >> class >> that was reported. >> >> But even before that, I am still having trouble with the framework >> attempting to put the Application object into the session. I do use >> DataBinder (1.1-SNAPSHOT) and extend both AuthDataApplication as well as >> AuthDataSession. I also use the cookieSignIn code provided by >> DataBinder. >> >> If I remove my cookie, and therefore get presented with the Login screen, >> I >> can log in and go to the Main page and navigate to the page in question >> with >> no attempt to serialize the Application. >> >> If I keep the cookie and restart the app, I get auto-logged in directly >> to >> the Main page, and when I click on the link to go to the same page, the >> exception is thrown. >> >> 12:56:23,518 ERROR RequestCycle:852 - there was an error updating the >> session [EMAIL PROTECTED] >> wicket.WicketRuntimeException: Internal error cloning object. Make sure >> all >> dependent objects implement Serializable. Class: >> com.csc.aims.framework.AIMSSession >> at >> wicket.protocol.http.HttpSessionStore.setAttribute(HttpSessionStore.java >> :69) >> at >> wicket.protocol.http.SecondLevelCacheSessionStore.setAttribute( >> SecondLevelCacheSessionStore.java:218) >> at >> wicket.protocol.http.AbstractHttpSessionStore.bind( >> AbstractHttpSessionStore.java:176) >> at wicket.Session.setAttribute(Session.java:1024) >> at wicket.Session.update(Session.java:1050) >> at wicket.protocol.http.WebSession.update(WebSession.java:126) >> at wicket.RequestCycle.detach(RequestCycle.java:848) >> at wicket.RequestCycle.steps(RequestCycle.java:1118) >> at wicket.RequestCycle.request(RequestCycle.java:454) >> at wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:243) >> at wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java >> :122) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( >> ApplicationFilterChain.java:202) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter( >> ApplicationFilterChain.java:173) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke( >> StandardWrapperValve.java:213) >> at >> org.apache.catalina.core.StandardContextValve.invoke( >> StandardContextValve.java:178) >> at >> org.apache.catalina.valves.FastCommonAccessLogValve.invoke( >> FastCommonAccessLogValve.java:495) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java >> :126) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java >> :105) >> at >> org.apache.catalina.core.StandardEngineValve.invoke( >> StandardEngineValve.java:107) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java >> :148) >> at >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) >> at >> >> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection >> (Http11BaseProtocol.java:664) >> at >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket( >> PoolTcpEndpoint.java:527) >> at >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( >> LeaderFollowerWorkerThread.java:80) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run( >> ThreadPool.java:684) >> at java.lang.Thread.run(Thread.java:595) >> Caused by: java.io.NotSerializableException: >> com.csc.aims.framework.AIMSApplication >> at >> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java >> :1081) >> at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java >> :1375) >> at java.io.ObjectOutputStream.writeSerialData( >> ObjectOutputStream.java:1347) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java >> :1290) >> at >> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java >> :1079) >> at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java >> :1375) >> at java.io.ObjectOutputStream.writeSerialData( >> ObjectOutputStream.java:1347) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java >> :1290) >> at >> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java >> :1079) >> at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java >> :1375) >> at java.io.ObjectOutputStream.writeSerialData( >> ObjectOutputStream.java:1347) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java >> :1290) >> at >> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java >> :1079) >> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java >> :302) >> at >> wicket.protocol.http.HttpSessionStore.setAttribute(HttpSessionStore.java >> :63) >> ... 25 more >> >> Wicket presents me with a page that I can click a link to go back to the >> HomePage. If I immediately click on the same link that produced the >> error, >> I don't receive an error this time and the page loads fine. This appears >> to >> be some kind of lazy initialization error, but I'm not sure where to >> begin >> looking. I put a breakpoint on the onClick for the link I was using, but >> the exception is thrown afte I click the link, but before the onClick >> handler is executed. >> >> >> igor.vaynberg wrote: >> > >> > afaik the patch was reversed. string response should never be >> serialized, >> > if >> > it is you have a bug somewhere in your code. >> > >> > -igor >> > >> > >> > On 12/7/06, ChuckDeal <[EMAIL PROTECTED]> wrote: >> >> >> >> >> >> I looked at the other post that references StringResponse and >> >> serializable >> >> and it was specifically for 2.0. But it looks like you put a fix in >> that >> >> codebase for it. Did not patch get applied to the 1.3 branch? >> >> >> >> >> >> ChuckDeal wrote: >> >> > >> >> > I still have to test it some more. But as I was playing with it, >> when >> >> the >> >> > Application object was NOT serialized, it would fail the first time >> I >> >> hit >> >> > one of my data pages; but if I hit the same page again, it worked >> fine. >> >> > >> >> > I also had a problem when using the ModalWindow to load a Page where >> it >> >> > was trying to serialize StringResponse, but I believe there are >> already >> >> > posts on the mailing list for that, so I will try and find those >> posts >> >> > first before going to far. >> >> > >> >> > Chuck >> >> > >> >> > >> >> > Johan Compagner wrote: >> >> >> >> >> >> that is something wrong in your code >> >> >> Or maybe a bug in wicket somewhere but more people should see that >> >> then >> >> >> Application object should never be serialized. At what point do you >> >> have >> >> >> to >> >> >> serialize it? >> >> >> >> >> >> I think you hold on to it somewhere in your code. >> >> >> >> >> >> johan >> >> >> >> >> >> >> >> >> On 12/7/06, ChuckDeal <[EMAIL PROTECTED]> wrote: >> >> >>> >> >> >>> >> >> >>> in 1.3, should Application implement Serializable? >> >> >>> >> >> >>> I am in the process of switching to the 1.3-incubating-SNAPSHOT >> >> builds >> >> >>> and >> >> >>> I >> >> >>> needed to implement Serializable on my APplication object. I >> checked >> >> >>> the >> >> >>> Wiki (Migrating from 1.2 to 1.3) and this wasn't mentioned. >> >> >>> >> >> >>> Is this required for 1.3 or have I got something wrong with my >> code? >> >> >>> Everything was peachy with the latest 1.2-SNAPSHOT. >> >> >>> >> >> >>> Chuck >> >> >>> -- >> >> >>> View this message in context: >> >> >>> >> >> >> http://www.nabble.com/Application-must-implement-Serializable--tf2771344.html#a7730054 >> >> >>> Sent from the Wicket - User mailing list archive at Nabble.com. >> >> >>> >> >> >>> >> >> >>> >> >> >> ------------------------------------------------------------------------- >> >> >>> Take Surveys. Earn Cash. Influence the Future of IT >> >> >>> Join SourceForge.net's Techsay panel and you'll get the chance to >> >> share >> >> >>> your >> >> >>> opinions on IT & business topics through brief surveys - and earn >> >> cash >> >> >>> >> >> >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> >> >>> _______________________________________________ >> >> >>> Wicket-user mailing list >> >> >>> [email protected] >> >> >>> https://lists.sourceforge.net/lists/listinfo/wicket-user >> >> >>> >> >> >> >> >> >> >> >> >> ------------------------------------------------------------------------- >> >> >> Take Surveys. Earn Cash. Influence the Future of IT >> >> >> Join SourceForge.net's Techsay panel and you'll get the chance to >> >> share >> >> >> your >> >> >> opinions on IT & business topics through brief surveys - and earn >> cash >> >> >> >> >> >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> >> >> _______________________________________________ >> >> >> Wicket-user mailing list >> >> >> [email protected] >> >> >> https://lists.sourceforge.net/lists/listinfo/wicket-user >> >> >> >> >> >> >> >> > >> >> > >> >> >> >> -- >> >> View this message in context: >> >> >> http://www.nabble.com/Application-must-implement-Serializable--tf2771344.html#a7742172 >> >> Sent from the Wicket - User mailing list archive at Nabble.com. >> >> >> >> >> >> >> ------------------------------------------------------------------------- >> >> Take Surveys. Earn Cash. Influence the Future of IT >> >> Join SourceForge.net's Techsay panel and you'll get the chance to >> share >> >> your >> >> opinions on IT & business topics through brief surveys - and earn cash >> >> >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> >> _______________________________________________ >> >> Wicket-user mailing list >> >> [email protected] >> >> https://lists.sourceforge.net/lists/listinfo/wicket-user >> >> >> > >> > >> ------------------------------------------------------------------------- >> > Take Surveys. Earn Cash. Influence the Future of IT >> > Join SourceForge.net's Techsay panel and you'll get the chance to share >> > your >> > opinions on IT & business topics through brief surveys - and earn cash >> > >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> > _______________________________________________ >> > Wicket-user mailing list >> > [email protected] >> > https://lists.sourceforge.net/lists/listinfo/wicket-user >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/Application-must-implement-Serializable--tf2771344.html#a7744403 >> Sent from the Wicket - User mailing list archive at Nabble.com. >> >> >> ------------------------------------------------------------------------- >> Take Surveys. Earn Cash. Influence the Future of IT >> Join SourceForge.net's Techsay panel and you'll get the chance to share >> your >> opinions on IT & business topics through brief surveys - and earn cash >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> _______________________________________________ >> Wicket-user mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/wicket-user >> > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Wicket-user mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/wicket-user > > -- View this message in context: http://www.nabble.com/Application-must-implement-Serializable--tf2771344.html#a7746181 Sent from the Wicket - User mailing list archive at Nabble.com. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Wicket-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/wicket-user
