LargeSelect is only really designed for use with the session (usually via User.Temp) but it would appear that to date nobody has bothered to debug it for persistent sessions.

From a brief look it appears that LargeSelect needs to at the very least mark its QueryDataSet qds as volatile and be enhanced to re-execute the query when it is unserialized. There may be other variables that are not serializable and yet others that may as well not be serialized since the query result will be discarded.

Scott

--
Scott Eade
Backstage Technologies Pty. Ltd.
http://www.backstagetech.com.au



Thomas Edwin Santosa wrote:

Hi,
I'm using Torque 3.1, Turbine 2.3.1 (From TDK) and Tomcat 5.0.18. I put LargeSelect instances into the session (done by screen classes) and then retrieve them from velocity template (as the javadocs suggest). Problem arise when I begin reloading the context once LargeSelect run. I've tried the getUser().setTemp() and the similiar problem arise. Below is the relevant part of the log. Is there another way to use LargeSelect without putting it into session?
Any idea?


Thanks,
Thomas


659746 [http8080-Processor22] INFO /vros.Context - Reloading this Context has started
[DEBUG] ManagerBase - -Stopping
[DEBUG] ManagerBase - -Unloading persisted sessions
[DEBUG] ManagerBase - -Saving persisted sessions to SESSIONS.ser
[DEBUG] ManagerBase - -Unloading 1 sessions
[INFO] ManagerBase - -Cannot serialize session attribute cari.largeselect for session 65FB6A0FFBB5A336DDE347EB0A4DA30F <java.io.NotSerializableException: java.lang.reflect.Method>java.io.NotSerializableException: java.lang.reflect.Method
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1054)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1471)
at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:912)
at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:585)
at org.apache.catalina.session.StandardManager.unload(StandardManager.java:531)
at org.apache.catalina.session.StandardManager.stop(StandardManager.java:733)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4438)
at org.apache.catalina.core.StandardContext.reload(StandardContext.java:2986)
at org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:1019)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:587)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)


[DEBUG] ManagerBase - -Expiring 1 persisted sessions



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to