You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Vadim Gritsenko <va...@reverycodes.com> on 2004/09/03 01:11:51 UTC

[2.1] ClassCastException in ConcreteTreeProcessor

Here is 2.1.6 showstopper. I guess this appeared after syncing
treeprocessor implementation - I've not seen it before:

java.lang.ClassCastException:
org/apache/cocoon/components/treeprocessor/TreeProcessor incompatible
with org/apache/cocoon/components/treeprocessor/ConcreteTreeProcessor
	at java.lang.Throwable.<init>(Throwable.java)
	at java.lang.Throwable.<init>(Throwable.java)
	at java.lang.ClassCastException.<init>(ClassCastException.java:53)
	at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.handleCocoonRedirect(ConcreteTreeProcessor.java:296)
	at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.access$000(ConcreteTreeProcessor.java:49)
	at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor$TreeProcessorRedirector.cocoonRedirect(ConcreteTreeProcessor.java)
	at
org.apache.cocoon.environment.ForwardRedirector.redirect(ForwardRedirector.java:58)
	at
gov.dc.octo.hsmp.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:56)


For some reason ConcreteTreeProcessor attempts to cast TreeProcessor
into ConcreteTreeProcessor:

     // Get the processor that should process this request
     ConcreteTreeProcessor processor;
     if (newEnv.getRootContext() == newEnv.getContext()) {
*       processor = (ConcreteTreeProcessor)getRootProcessor();
     } else {
         processor = this;
     }


Anybody have a clue?

PS Reverting the change fixes ClassCast:
     svn up -r 37173 src/java/org/apache/cocoon/components/treeprocessor


Vadim




RE: [2.1] ClassCastException in ConcreteTreeProcessor

Posted by Carsten Ziegeler <cz...@apache.org>.
Does this work in 2.2?

Carsten 

> -----Original Message-----
> From: Vadim Gritsenko [mailto:vadim@reverycodes.com] 
> Sent: Friday, September 03, 2004 3:44 AM
> To: dev@cocoon.apache.org
> Subject: Re: [2.1] ClassCastException in ConcreteTreeProcessor
> 
> Vadim Gritsenko wrote:
> 
> > Here is 2.1.6 showstopper. I guess this appeared after syncing 
> > treeprocessor implementation - I've not seen it before:
> 
> Apparently, any internal redirect failing (including ones 
> from the sitemap). Test case:
> 
> http://localhost:8888/samples/test/redirect/redirect-to-intern
al-from-sitemap
> 
> 
> > java.lang.ClassCastException:
> > org/apache/cocoon/components/treeprocessor/TreeProcessor 
> incompatible 
> > with 
> org/apache/cocoon/components/treeprocessor/ConcreteTreeProcessor
> >     at java.lang.Throwable.<init>(Throwable.java)
> >     at java.lang.Throwable.<init>(Throwable.java)
> >     at 
> java.lang.ClassCastException.<init>(ClassCastException.java:53)
> >     at
> > 
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.handl
> > eCocoonRedirect(ConcreteTreeProcessor.java:296)
> > 
> >     at
> > 
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.acces
> > s$000(ConcreteTreeProcessor.java:49)
> > 
> >     at
> > 
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor$TreeP
> > rocessorRedirector.cocoonRedirect(ConcreteTreeProcessor.java)
> > 
> >     at
> > 
> org.apache.cocoon.environment.ForwardRedirector.redirect(ForwardRedire
> > ctor.java:58)
> > 
> >     at
> > 
> gov.dc.octo.hsmp.faces.context.ExternalContextImpl.dispatch(ExternalCo
> > ntextImpl.java:56)
> > 
> > 
> > 
> > For some reason ConcreteTreeProcessor attempts to cast 
> TreeProcessor 
> > into ConcreteTreeProcessor:
> > 
> >     // Get the processor that should process this request
> >     ConcreteTreeProcessor processor;
> >     if (newEnv.getRootContext() == newEnv.getContext()) {
> > *       processor = (ConcreteTreeProcessor)getRootProcessor();
> >     } else {
> >         processor = this;
> >     }
> > 
> > 
> > Anybody have a clue?
> > 
> > PS Reverting the change fixes ClassCast:
> >     svn up -r 37173 
> > src/java/org/apache/cocoon/components/treeprocessor
> 
> Found out that older version also fails - under some other 
> conditions... 
> No luck...
> 
> Vadim
> 
> 


Re: [2.1] ClassCastException in ConcreteTreeProcessor

Posted by Vadim Gritsenko <va...@reverycodes.com>.
Vadim Gritsenko wrote:

> Here is 2.1.6 showstopper. I guess this appeared after syncing
> treeprocessor implementation - I've not seen it before:

Apparently, any internal redirect failing (including ones from the 
sitemap). Test case:

http://localhost:8888/samples/test/redirect/redirect-to-internal-from-sitemap


> java.lang.ClassCastException:
> org/apache/cocoon/components/treeprocessor/TreeProcessor incompatible
> with org/apache/cocoon/components/treeprocessor/ConcreteTreeProcessor
>     at java.lang.Throwable.<init>(Throwable.java)
>     at java.lang.Throwable.<init>(Throwable.java)
>     at java.lang.ClassCastException.<init>(ClassCastException.java:53)
>     at
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.handleCocoonRedirect(ConcreteTreeProcessor.java:296) 
> 
>     at
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.access$000(ConcreteTreeProcessor.java:49) 
> 
>     at
> org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor$TreeProcessorRedirector.cocoonRedirect(ConcreteTreeProcessor.java) 
> 
>     at
> org.apache.cocoon.environment.ForwardRedirector.redirect(ForwardRedirector.java:58) 
> 
>     at
> gov.dc.octo.hsmp.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:56) 
> 
> 
> 
> For some reason ConcreteTreeProcessor attempts to cast TreeProcessor
> into ConcreteTreeProcessor:
> 
>     // Get the processor that should process this request
>     ConcreteTreeProcessor processor;
>     if (newEnv.getRootContext() == newEnv.getContext()) {
> *       processor = (ConcreteTreeProcessor)getRootProcessor();
>     } else {
>         processor = this;
>     }
> 
> 
> Anybody have a clue?
> 
> PS Reverting the change fixes ClassCast:
>     svn up -r 37173 src/java/org/apache/cocoon/components/treeprocessor

Found out that older version also fails - under some other conditions... 
No luck...

Vadim