[ 
https://issues.apache.org/jira/browse/COCOON-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Grzegorz Kossakowski updated COCOON-2076:
-----------------------------------------

    Urgency: Blocker

I found what broke RCL functionality. It's commit r540145 (see: 
http://article.gmane.org/gmane.text.xml.cocoon.cvs/24484).

Current problem is that blockServletCollector map is not reloaded so it keeps 
references to the old servlets. Processor is not set exception was thrown 
because old SitemapServlet was cleaned up (disposed) by RCL functionality so it 
has no instance of TreeProcessor.

Now, what can we do in order to fix this problem? One option is to reload 
blockServletCollector map similar way as it was done before changes committed 
in rr540145. To be honest, I don't like this solution. It pollutes 
DispatcherServlet's code with RCL functionality which is not a good, IMO.
Can't we just reload whole DispatcherServlet so we are sure that valid instance 
of blockServletCollector is used?

Reinhard, can you comment on this?

> Exception when Reloading Classloader
> ------------------------------------
>
>                 Key: COCOON-2076
>                 URL: https://issues.apache.org/jira/browse/COCOON-2076
>             Project: Cocoon
>          Issue Type: Bug
>          Components: * Cocoon Core, - Build System: Maven, - Servlet service 
> framework
>    Affects Versions: 2.2-dev (Current SVN)
>            Reporter: Vladimir S Bronnikov
>
> I'm running own cocoon block using Reload Classloader (see 
> http://cocoon.zones.apache.org/dev-docs/2.2/maven-plugins/maven-plugin/1.0/1297_1_1.html).
>  Then I change one of my class. After update my browser I get foloowing error 
> in stactrace:
> 2007-06-07 12:57:38,518 btpool0-1 ERROR cocoon - Internal Cocoon Problem
> org.apache.cocoon.ProcessingException: Processor is not set.
>       at 
> org.apache.cocoon.environment.internal.EnvironmentHelper.enterProcessor(EnvironmentHelper.java:275)
>       at 
> org.apache.cocoon.servlet.RequestProcessor.process(RequestProcessor.java:345)
>       at 
> org.apache.cocoon.servlet.RequestProcessor.service(RequestProcessor.java:171)
>       at 
> org.apache.cocoon.sitemap.SitemapServlet.service(SitemapServlet.java:62)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:538)
>       at 
> org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:520)
>       at 
> org.apache.cocoon.servletservice.spring.ServletFactoryBean$ServiceInterceptor.invoke(ServletFactoryBean.java:229)
>       at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
>       at 
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>       at $Proxy0.service(Unknown Source)
>       at 
> org.apache.cocoon.servletservice.DispatcherServlet.service(DispatcherServlet.java:92)
> ...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to