> From: Richard Mixon (qwest) [mailto:[EMAIL PROTECTED]
> Subject: RE: Tomcat clustering and NotSerializableException
> 
> CoyoteRequestFacade is the first element in the stack trace - 
> it is not the session stored object that is causing the 
> NotSerializableException.

Actually, the CoyoteRequestFacade _is_ the object being serialized.  That class 
name is the explanatory text added to the exception being thrown by 
ObjectOutputStream at line 1054 (look at the JRE source), not the origin of the 
exception.  Nonetheless, your points are still valid.  Whatever code is 
sneaking a direct or indirect reference to the request into the session object 
needs to be changed.  As you indicated, it must be an indirect reference from 
an attribute added to the session, since a direct one wouldn't pass the 
serializability check.

> (DeltaManager.java:813)- Unable to serialize delta request
>
> java.io.NotSerializableException: 
> org.apache.coyote.tomcat5.CoyoteRequestFacade
>   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.cluster.session.DeltaRequest$AttributeInfo.writeExternal(DeltaRequest.java:300)
>   at 
> org.apache.catalina.cluster.session.DeltaRequest.writeExternal(DeltaRequest.java:217)
>   at 
> org.apache.catalina.cluster.session.DeltaManager.unloadDeltaRequest(DeltaManager.java:393)
>   at 
> org.apache.catalina.cluster.session.DeltaManager.requestCompleted(DeltaManager.java:782)
>   at 
> org.apache.catalina.cluster.tcp.ReplicationValve.invoke(ReplicationValve.java:203)
>   at 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>   at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
>   at 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>   at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>   at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>   at 
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>   at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>   at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>   at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>   at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
>   at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
>   at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
>   at 
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
>   at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
>   at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>   at java.lang.Thread.run(Thread.java:534)

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

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

Reply via email to