Strange that WebLogic is trying to serialize or de-serialize the
contents of the ServletContext.  That's not supposed to happen and
Tapestry isn't prepared for it.

On 6/17/05, Hensley, Richard <[EMAIL PROTECTED]> wrote:
> Either your visit is not serializable, or a persistent property is not
> serializable. Generally, web containers serialize attributes of a session
> when they start transporting the sessions around in clusters.
> 
> Richard
> 
> -----Original Message-----
> From: Werner Lehmann [mailto:[EMAIL PROTECTED]
> Sent: Friday, June 17, 2005 9:54 AM
> To: Tapestry users
> Subject: NotSerializableException: DelegatingPropertySource (WebLogic)
> 
> Hi,
> 
> does anyone have a clue why WebLogic 8.1 SP2 throws this error? I have a
> Tapestry 3.0.3 application running on it and if I "hammer" the app with
> two continuously running wgets I receive exceptions like below eventually:
> 
> > ####<16.06.2005 15.10 Uhr CEST> <Error> <HTTP> <miraculix> <MintManaged>
> <ExecuteThread: '12' for queue: 'weblogic.kernel.Default'> <<anonymous>> <>
> <BEA-101309> <[ServletContext(id=27529215,name=mymint,context-path=/mymint)]
> could not deserialize the context attribute
> "org.apache.tapestry.PropertySource:MyMint"
> > java.io.NotSerializableException:
> org.apache.tapestry.util.DelegatingPropertySource
> >       at
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1054)
> >       at
> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
> >       at
> weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:9
> 5)
> >       at
> weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:6
> 7)
> >       at
> weblogic.servlet.internal.WebAppServletContext.getAttribute(WebAppServletCon
> text.java:637)
> >       at
> org.apache.tapestry.engine.AbstractEngine.setupForRequest(AbstractEngine.jav
> a:1278)
> >       at
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:841)
> >       at
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:198
> )
> >       at
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:159)
> >       at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> >       at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >       at
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
> tStubImpl.java:1053)
> >       at
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
> :387)
> >       at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
> >       at
> weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >       at
> org.apache.tapestry.RedirectFilter.doFilter(RedirectFilter.java:106)
> >       at
> weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
> >       at
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
> ebAppServletContext.java:6316)
> >       at
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubjec
> t.java:317)
> >       at
> weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
> >       at
> weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
> ntext.java:3622)
> >       at
> weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
> :2569)
> >       at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
> >       at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
> 
> When this happens, most of the time it is followed by other very similar
> call stacks with just other Tapestry classes, e.g.
> 
> > java.io.NotSerializableException:
> org.apache.tapestry.enhance.DefaultComponentClassEnhancer
> > java.io.NotSerializableException: org.apache.tapestry.util.pool.Pool
> > java.io.NotSerializableException:
> org.apache.tapestry.engine.DefaultTemplateSource
> > java.io.NotSerializableException: org.apache.tapestry.pageload.PageSource
> 
> among others. These classes are not serializable (at least,
> DelegatingPropertySource is not, it does not even implement the interface).
> 
> Also strange: it complains about not being able to "deserialize the
> context attribute" (as in the trace above). Hence _serializing_ was not
> a problem for it?
> 
> Might this be related to this fix in WebLogic 8.1 SP5?
> 
> CR189815:
> http://e-docs.bea.com/wls/docs81/notes/resolved_sp05.html#1864954
> 
> > If any change was made in the HttpServletContext that extends
> > ActionForm in Struts framework, WebLogic Server was throwing a
> > ClassCastException while accessing it.
> >
> > Now, when the servlet is reloaded, any non-serializable attribute
> > (stored in HttpServletContext) that is loaded using the servlet or
> > its child classes is removed from HttpServletContext. As a result,
> > the WebLogic Server no longer throws a ClassCastException while
> > accessing HttpServletContext.
> 
> 
> Regards
> Werner
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
Howard M. Lewis Ship
Independent J2EE / Open-Source Java Consultant
Creator, Jakarta Tapestry
Creator, Jakarta HiveMind

Professional Tapestry training, mentoring, support
and project work.  http://howardlewisship.com

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

Reply via email to