I had been assuming this was only happening in Jetty, but did just notice
that it does in Tomcat as well.  It's been going on for
a little while (week or two??).

I'm not too far into the process yet, but it looks like
the old cocoon isn't finished even decommisioning
components when service() calls this.cocoon.process() at
line 1074 in CocoonServlet.

core.log :
DEBUG   (2003-03-30) 14:06.56:556   [core.manager] (Unknown-URI)
Unknown-thread/DefaultComponentFactory: ComponentFactory decommissioning
instance of org.apache.cocoon.components.classloader.ClassLoaderManagerImpl.
DEBUG   (2003-03-30) 14:06.56:556   [core.manager] (Unknown-URI)
Unknown-thread/DefaultComponentFactory: ComponentFactory decommissioning
instance of org.apache.excalibur.store.impl.StoreJanitorImpl.
DEBUG   (2003-03-30) 14:06.56:556   [core.manager] (Unknown-URI)
Unknown-thread/DefaultComponentFactory: ComponentFactory decommissioning
instance of org.apache.cocoon.components.resolver.DefaultResolver.
<EOF>

and error.log :
ERROR   (2003-03-30) 14:06.56:566   [access] (/samples/status.html)
PoolThread-4/CocoonServlet: Internal Cocoon Problem
java.lang.IllegalStateException: You cannot lookup components on a disposed
ComponentLocator
        at
org.apache.avalon.excalibur.component.ExcaliburComponentManager.lookup(Excal
iburComponentManager.java:199)
        at
org.apache.cocoon.components.CocoonComponentManager.lookup(CocoonComponentMa
nager.java:294)
        at
org.apache.cocoon.environment.AbstractEnvironment.startingProcessing(Abstrac
tEnvironment.java:560)
        at
org.apache.cocoon.components.CocoonComponentManager.startProcessing(CocoonCo
mponentManager.java:181)
        at org.apache.cocoon.Cocoon.process(Cocoon.java:628)
        at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1074)

Note the time - both decommissioning and process() are happening at
14:06.56:566

I thought getCocoon() at 997 would block until createCocoon() and
disposeCocoon() were
totally finished.  If that is what should be happening, that seems to be the
problem.

So, best guesses for the culprit are:
CocoonServlet - something in the dispose process
Cocoon.java - dispose() or something it calls
ComponentManager (ECM)

>From a quick look, at the cvs history, the last two seem most likely.
excalibur-component-complete-1.1.jar was updated 3/19 to the latest
avalon/excalibur releases - could there be a change there?

There are some changes to Cocoon.java over the last few weeks by Carsten and
Berin that could possibly be involved at first glance, but I don't have time
to
dig more ATM.

Geoff

> -----Original Message-----
> From: Stefano Mazzocchi [mailto:[EMAIL PROTECTED]
> Sent: Sunday, March 30, 2003 11:14 AM
> To: Apache Cocoon
> Subject: [BUG] cocoon doesn't reload
>
>
> With latest HEAD, if you do
>
>   http://localhost:8888/?cocoon-reload=true
>
> you get an internal server error that says that
>
>   "you cannot lookup components on a disposed ComponentLocator"
>
> it seems that once shutdown, the component manager is not recreated.
>
> Any idea on what broke this? or how to fix it?
>
> Stefano.
>
>
>

Reply via email to