I don't think it's a specific problem only for e.g. ageci filters. I can
reproduce the same error in a different way:
Have the block running via rcl and change the configuration of the i18n
transformer, e.g. add a new catalogue and hit reload in the browser.
from sitemap.xmap:
<snip>
<map:components>
<map:transformers default="xslt">
<map:transformer name="i18n"
src="org.apache.cocoon.transformation.I18nTransformer">
<catalogues default="t">
<catalogue id="t" name="main"
location="serlvet:myblock:/resource/internal/i18n" />
<catalogue id="t2" name="project"
location="serlvet:myblock:/resource/internal/i18n" />
</catalogues>
</map:transformer>
</map:transformers>
</map:components>
</snip>
Caused by: org.apache.avalon.framework.service.ServiceException:
Exception during lookup of component with
'org.apache.cocoon.transformation.Transformer/i18n'.
(Key='AvalonServiceManager')
at
org.apache.cocoon.core.container.spring.avalon.AvalonServiceManager.lookup(AvalonServiceManager.java:63)
at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.addTransformer(AbstractProcessingPipeline.java:242)
... 132 more
Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name
'org.apache.cocoon.transformation.Transformer/i18n': Initialization of
bean failed; nested exception is java.lang.IllegalStateException:
BeanFactory not initialized or already closed - call 'refresh' before
accessing beans via the ApplicationContext
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:454)
at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:254)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:144)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:251)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:232)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:163)
at
org.apache.cocoon.core.container.spring.avalon.AvalonServiceManager.lookup(AvalonServiceManager.java:61)
... 133 more
Caused by: java.lang.IllegalStateException: BeanFactory not initialized
or already closed - call 'refresh' before accessing beans via the
ApplicationContext
at
org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:120)
at
org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker.postProcessAfterInitialization(AbstractApplicationContext.java:951)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:318)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1119)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:431)
... 139 more
Felix
>>
>> java.lang.IllegalStateException: BeanFactory not initialized or
>> already closed - call 'refresh'
>> before accessing beans via the ApplicationContext
>> at
>> org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:120)
>>
>> at
>> org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:687)
>>
>> at
>> org.acegisecurity.util.FilterChainProxy.obtainAllDefinedFilters(FilterChainProxy.java:220)
>>
>> at
>> org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:135)
>>
>> at
>> org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
>>
>> at
>> org.apache.cocoon.tools.rcl.wrapper.servlet.ReloadingServletFilter.doFilter(ReloadingServletFilter.java:50)
>>
>> at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1045)
>>
>>
>> As you can see it still happens with the ReloadingServletFilter :-(
>>
>> _I'm stuck now!_
>> _There is nothing working for me anymore_
>> _I cannot run any of my blocks anyhow_
>
> I will provide a configuration parameter that switches of reloading.
>