[
https://issues.apache.org/jira/browse/COCOON-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mark Diggory updated COCOON-2265:
---------------------------------
Description:
The following issue occurs with the blockcontext URL when trying to use
cocoon-servlet-service-impl 1.2.0 and mounting a servlet using the default
architype with this dependency added. I am including an example project for
others to test this against.
I am trying to replicate this in a test example is we are having sever
difficulties using 1.2.0 and most specifically using
org.apache.cocoon.sitemap.SitemapServlet in our Cocoon project located here..,
http://jira.dspace.org/jira/browse/DS-253
Here we were able to alleviate
https://issues.apache.org/jira/browse/COCOON-2217, by upgrading to 1.2.0, but
it is causing other problems now.
I am including a new example multimodule project that replicates this. To
execute this project do:
cd test
mvn package install
to execute the first application
cd test-original-webapp
mvn jetty:run
this application should run without issues
to execute the second modified webapplication do:
cd ../test-new-webapp
mvn jetty:run
It is comprised of two example block/webapp pairs
test/test-original-block
test/test-original-webapp
The above example was generated off the cocoon archetypes, in needed to be
altered to adjust for the problem identified in
http://www.nabble.com/Creating-a-parent-POM-td18173518.html
I corrected for this by adding the maven-war-plugin as a plugin in
test/pom.xml, otherwise it is unaltered accept to insert test-original-block in
test-original-webapp. This example works but uses:
org.apache.cocoon:cocoon-servlet-service-impl:1.0.0
The next example is generated the same way but adds dependencies to upgrade the
block to use org.apache.cocoon:cocoon-servlet-service-impl:1.2.0
test/test-new-block
test/test-new-webapp
But I needed to also add an explicit addition of the dependency:
org.apache.excalibur.components:excalibur-sourceresolve:2.2.3 to correct for
the following problem as well...
2009-08-22 17:25:03.216::WARN: Failed startup of context
org.mortbay.jetty.plugin.jetty6pluginwebappcont...@e696f9{/,/Users/mdiggory/test-works/test-new-webapp/target/test-new-webapp-1.0}
org.springframework.beans.factory.BeanDefinitionStoreException: Unable to read
Avalon configuration from 'resource://org/apache/cocoon/cocoon.xconf'.; nested
exception is org.apache.avalon.framework.configuration.ConfigurationException:
Unable to create class for component with role
org.apache.cocoon.generation.Generator/imagedirectory with class:
org.apache.cocoon.generation.ImageDirectoryGenerator
at
org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.parse(BridgeElementParser.java:86)
...
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.avalon.framework.configuration.ConfigurationException:
Unable to create class for component with role
org.apache.cocoon.generation.Generator/imagedirectory with class:
org.apache.cocoon.generation.ImageDirectoryGenerator
at
org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.createConfig(BridgeElementParser.java:216)
... 58 more
Caused by: java.lang.NoClassDefFoundError:
org/apache/excalibur/source/SourceException
at java.lang.Class.forName0(Native Method)
at
org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.createConfig(BridgeElementParser.java:207)
... 60 more
2009-08-22 17:25:03.228::WARN: Nested in
org.springframework.beans.factory.BeanDefinitionStoreException: Unable to read
Avalon configuration from 'resource://org/apache/cocoon/cocoon.xconf'.; nested
exception is org.apache.avalon.framework.configuration.ConfigurationException:
Unable to create class for component with role
org.apache.cocoon.generation.Generator/imagedirectory with class:
org.apache.cocoon.generation.ImageDirectoryGenerator:
java.lang.NoClassDefFoundError: org/apache/excalibur/source/SourceException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at
org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.createConfig(BridgeElementParser.java:207)
...
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
2009-08-22 17:25:03.261::INFO: Started [email protected]:8888
[INFO] Started Jetty Server
Once this excalibur bridge error is corrected for, the resulting error occurs
in our application as well... and reflects that for some reason in
org.apache.cocoon:cocoon-servlet-service-impl:1.2.0 that the "blockcontext:"
URL scheme is no longer being properly handled by the application
2009-08-22 17:21:15.052:/:INFO: Apache Cocoon Spring Configurator v1.0.2 is
running in mode 'prod'.
2009-08-22 17:21:17.084::WARN: Failed startup of context
org.mortbay.jetty.plugin.jetty6pluginwebappcont...@66b7ea{/,/Users/mdiggory/test-works/test-new-webapp/target/test-new-webapp-1.0}
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'com.example.test-new-block.service': Invocation of init method
failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Could not create
configuration for TreeProcesoor; nested exception is
java.net.MalformedURLException: unknown protocol: blockcontext
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1337)
...
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.springframework.beans.factory.BeanCreationException: Could not
create configuration for TreeProcesoor; nested exception is
java.net.MalformedURLException: unknown protocol: blockcontext
at
org.apache.cocoon.sitemap.SitemapServlet$RequestProcessor.getProcessor(SitemapServlet.java:113)
...
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334)
... 53 more
Caused by: java.net.MalformedURLException: unknown protocol: blockcontext
at java.net.URL.<init>(URL.java:574)
at java.net.URL.<init>(URL.java:464)
at java.net.URL.<init>(URL.java:413)
at
org.apache.cocoon.servletservice.ServletServiceContext.getResource(ServletServiceContext.java:108)
at
org.apache.cocoon.sitemap.SitemapServlet$RequestProcessor.createTreeProcessorConfiguration(SitemapServlet.java:162)
at
org.apache.cocoon.sitemap.SitemapServlet$RequestProcessor.getProcessor(SitemapServlet.java:111)
... 76 more
2009-08-22 17:21:17.097::WARN: Nested in
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'com.example.test-new-block.service': Invocation of init method
failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Could not create
configuration for TreeProcesoor; nested exception is
java.net.MalformedURLException: unknown protocol: blockcontext:
java.net.MalformedURLException: unknown protocol: blockcontext
at java.net.URL.<init>(URL.java:574)
at java.net.URL.<init>(URL.java:464)
at java.net.URL.<init>(URL.java:413)
at
org.apache.cocoon.servletservice.ServletServiceContext.getResource(ServletServiceContext.java:108)
...
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
2009-08-22 17:21:17.128::INFO: Started [email protected]:8888
[INFO] Started Jetty Server
was:
The following issue occurs with the blockcontext URL when trying to use
cocoon-servlet-service-impl 1.2.0 and mounting a servlet using the default
architype with this dependency added. I am including an example project for
others to test this against.
Finally, the reason, I am trying to replicate this in a test example is we are
having sever difficulties using 1.2.0 and most specifically using
org.apache.cocoon.sitemap.SitemapServlet in our Cocoon project located here..,
http://jira.dspace.org/jira/browse/DS-253
Here we were able to alleviate
https://issues.apache.org/jira/browse/COCOON-2217, by upgrading to 1.2.0, but
it is causing other problems now.
Mark
My testing strategy is
cd test
mvn package install
cd test-webapp
mvn jetty:run
and causes the following exception
[INFO] [jetty:run]
[INFO] Configuring Jetty for project: test-webapp
[INFO] Webapp source directory =
/Users/mdiggory/Documents/workspace-sts/test/test-webapp/target/test-webapp-1.0-SNAPSHOT
[INFO] web.xml file =
/Users/mdiggory/Documents/workspace-sts/test/test-webapp/target/test-webapp-1.0-SNAPSHOT/WEB-INF/web.xml
[INFO] Classes =
/Users/mdiggory/Documents/workspace-sts/test/test-webapp/target/classes
2009-08-20 11:13:44.071::INFO: Logging to STDERR via org.mortbay.log.StdErrLog
[INFO] Context path = /
[INFO] Tmp directory = determined at runtime
[INFO] Web defaults = org/mortbay/jetty/webapp/webdefault.xml
[INFO] Web overrides = none
[INFO] Webapp directory =
/Users/mdiggory/Documents/workspace-sts/test/test-webapp/target/test-webapp-1.0-SNAPSHOT
[INFO] Starting jetty 6.1.7 ...
2009-08-20 11:13:44.183::INFO: jetty-6.1.7
2009-08-20 11:13:44.448::INFO: No Transaction manager found - if your webapp
requires one, please configure one.
log4j:WARN No appenders could be found for logger
(org.springframework.util.ClassUtils).
log4j:WARN Please initialize the log4j system properly.
2009-08-20 11:13:45.069:/:INFO: Initializing Spring root WebApplicationContext
2009-08-20 11:13:47.786:/:INFO: Apache Cocoon Spring Configurator v1.0.2 is
running in mode 'prod'.
2009-08-20 11:13:48.877::WARN: Failed startup of context
org.mortbay.jetty.plugin.jetty6pluginwebappcont...@2a74c7{/,/Users/mdiggory/Documents/workspace-sts/test/test-webapp/target/test-webapp-1.0-SNAPSHOT}
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'com.test.test-block.service': Invocation of init method failed;
nested exception is java.net.MalformedURLException: Could not resolve
blockcontext:/test-block/ due to java.net.MalformedURLException: Unknown block
name test-block in block context uri blockcontext:/test-block/
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1260)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:438)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:383)
at java.security.AccessController.doPrivileged(Native Method)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:353)
at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:169)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:394)
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:736)
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:369)
at
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
at
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
at
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
at
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
at
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)
at
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
at
org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
at
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
at org.mortbay.jetty.Server.doStart(Server.java:222)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
at
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:357)
at
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:293)
at
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:203)
at
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:182)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: java.net.MalformedURLException: Could not resolve
blockcontext:/test-block/ due to java.net.MalformedURLException: Unknown block
name test-block in block context uri blockcontext:/test-block/
at
org.apache.cocoon.servletservice.spring.ServletFactoryBean.init(ServletFactoryBean.java:111)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1325)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1294)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1257)
... 52 more
2009-08-20 11:13:49.889::WARN: Nested in
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'com.test.test-block.service': Invocation of init method failed;
nested exception is java.net.MalformedURLException: Could not resolve
blockcontext:/test-block/ due to java.net.MalformedURLException: Unknown block
name test-block in block context uri blockcontext:/test-block/:
java.net.MalformedURLException: Could not resolve blockcontext:/test-block/ due
to java.net.MalformedURLException: Unknown block name test-block in block
context uri blockcontext:/test-block/
at
org.apache.cocoon.servletservice.spring.ServletFactoryBean.init(ServletFactoryBean.java:111)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1325)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1294)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1257)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:438)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:383)
at java.security.AccessController.doPrivileged(Native Method)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:353)
at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:169)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:394)
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:736)
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:369)
at
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
at
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
at
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
at
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
at
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)
at
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
at
org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
at
org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
at org.mortbay.jetty.Server.doStart(Server.java:222)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at
org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
at
org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:357)
at
org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:293)
at
org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:203)
at
org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:182)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
2009-08-20 11:13:49.956::INFO: Started [email protected]:8888
[INFO] Started Jetty Server
> Cannot use cocoon-servlet-service-impl 1.2.0 because
> java.net.MalformedURLException: Could not resolve blockcontext:/...
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: COCOON-2265
> URL: https://issues.apache.org/jira/browse/COCOON-2265
> Project: Cocoon
> Issue Type: Bug
> Components: - Servlet service framework
> Affects Versions: 2.2, 2.2-dev (Current SVN)
> Reporter: Mark Diggory
>
> The following issue occurs with the blockcontext URL when trying to use
> cocoon-servlet-service-impl 1.2.0 and mounting a servlet using the default
> architype with this dependency added. I am including an example project for
> others to test this against.
> I am trying to replicate this in a test example is we are having sever
> difficulties using 1.2.0 and most specifically using
> org.apache.cocoon.sitemap.SitemapServlet in our Cocoon project located here..,
> http://jira.dspace.org/jira/browse/DS-253
> Here we were able to alleviate
> https://issues.apache.org/jira/browse/COCOON-2217, by upgrading to 1.2.0, but
> it is causing other problems now.
> I am including a new example multimodule project that replicates this. To
> execute this project do:
> cd test
> mvn package install
> to execute the first application
> cd test-original-webapp
> mvn jetty:run
> this application should run without issues
> to execute the second modified webapplication do:
> cd ../test-new-webapp
> mvn jetty:run
> It is comprised of two example block/webapp pairs
> test/test-original-block
> test/test-original-webapp
> The above example was generated off the cocoon archetypes, in needed to be
> altered to adjust for the problem identified in
> http://www.nabble.com/Creating-a-parent-POM-td18173518.html
> I corrected for this by adding the maven-war-plugin as a plugin in
> test/pom.xml, otherwise it is unaltered accept to insert test-original-block
> in test-original-webapp. This example works but uses:
> org.apache.cocoon:cocoon-servlet-service-impl:1.0.0
> The next example is generated the same way but adds dependencies to upgrade
> the block to use org.apache.cocoon:cocoon-servlet-service-impl:1.2.0
> test/test-new-block
> test/test-new-webapp
> But I needed to also add an explicit addition of the dependency:
> org.apache.excalibur.components:excalibur-sourceresolve:2.2.3 to correct for
> the following problem as well...
> 2009-08-22 17:25:03.216::WARN: Failed startup of context
> org.mortbay.jetty.plugin.jetty6pluginwebappcont...@e696f9{/,/Users/mdiggory/test-works/test-new-webapp/target/test-new-webapp-1.0}
> org.springframework.beans.factory.BeanDefinitionStoreException: Unable to
> read Avalon configuration from 'resource://org/apache/cocoon/cocoon.xconf'.;
> nested exception is
> org.apache.avalon.framework.configuration.ConfigurationException: Unable to
> create class for component with role
> org.apache.cocoon.generation.Generator/imagedirectory with class:
> org.apache.cocoon.generation.ImageDirectoryGenerator
> at
> org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.parse(BridgeElementParser.java:86)
> ...
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> Caused by: org.apache.avalon.framework.configuration.ConfigurationException:
> Unable to create class for component with role
> org.apache.cocoon.generation.Generator/imagedirectory with class:
> org.apache.cocoon.generation.ImageDirectoryGenerator
> at
> org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.createConfig(BridgeElementParser.java:216)
> ... 58 more
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/excalibur/source/SourceException
> at java.lang.Class.forName0(Native Method)
> at
> org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.createConfig(BridgeElementParser.java:207)
> ... 60 more
> 2009-08-22 17:25:03.228::WARN: Nested in
> org.springframework.beans.factory.BeanDefinitionStoreException: Unable to
> read Avalon configuration from 'resource://org/apache/cocoon/cocoon.xconf'.;
> nested exception is
> org.apache.avalon.framework.configuration.ConfigurationException: Unable to
> create class for component with role
> org.apache.cocoon.generation.Generator/imagedirectory with class:
> org.apache.cocoon.generation.ImageDirectoryGenerator:
> java.lang.NoClassDefFoundError: org/apache/excalibur/source/SourceException
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:164)
> at
> org.apache.cocoon.core.container.spring.avalon.BridgeElementParser.createConfig(BridgeElementParser.java:207)
> ...
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> 2009-08-22 17:25:03.261::INFO: Started [email protected]:8888
> [INFO] Started Jetty Server
> Once this excalibur bridge error is corrected for, the resulting error occurs
> in our application as well... and reflects that for some reason in
> org.apache.cocoon:cocoon-servlet-service-impl:1.2.0 that the "blockcontext:"
> URL scheme is no longer being properly handled by the application
> 2009-08-22 17:21:15.052:/:INFO: Apache Cocoon Spring Configurator v1.0.2 is
> running in mode 'prod'.
> 2009-08-22 17:21:17.084::WARN: Failed startup of context
> org.mortbay.jetty.plugin.jetty6pluginwebappcont...@66b7ea{/,/Users/mdiggory/test-works/test-new-webapp/target/test-new-webapp-1.0}
> org.springframework.beans.factory.BeanCreationException: Error creating bean
> with name 'com.example.test-new-block.service': Invocation of init method
> failed; nested exception is
> org.springframework.beans.factory.BeanCreationException: Could not create
> configuration for TreeProcesoor; nested exception is
> java.net.MalformedURLException: unknown protocol: blockcontext
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1337)
> ...
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> Caused by: org.springframework.beans.factory.BeanCreationException: Could not
> create configuration for TreeProcesoor; nested exception is
> java.net.MalformedURLException: unknown protocol: blockcontext
> at
> org.apache.cocoon.sitemap.SitemapServlet$RequestProcessor.getProcessor(SitemapServlet.java:113)
> ...
> at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334)
> ... 53 more
> Caused by: java.net.MalformedURLException: unknown protocol: blockcontext
> at java.net.URL.<init>(URL.java:574)
> at java.net.URL.<init>(URL.java:464)
> at java.net.URL.<init>(URL.java:413)
> at
> org.apache.cocoon.servletservice.ServletServiceContext.getResource(ServletServiceContext.java:108)
> at
> org.apache.cocoon.sitemap.SitemapServlet$RequestProcessor.createTreeProcessorConfiguration(SitemapServlet.java:162)
> at
> org.apache.cocoon.sitemap.SitemapServlet$RequestProcessor.getProcessor(SitemapServlet.java:111)
> ... 76 more
> 2009-08-22 17:21:17.097::WARN: Nested in
> org.springframework.beans.factory.BeanCreationException: Error creating bean
> with name 'com.example.test-new-block.service': Invocation of init method
> failed; nested exception is
> org.springframework.beans.factory.BeanCreationException: Could not create
> configuration for TreeProcesoor; nested exception is
> java.net.MalformedURLException: unknown protocol: blockcontext:
> java.net.MalformedURLException: unknown protocol: blockcontext
> at java.net.URL.<init>(URL.java:574)
> at java.net.URL.<init>(URL.java:464)
> at java.net.URL.<init>(URL.java:413)
> at
> org.apache.cocoon.servletservice.ServletServiceContext.getResource(ServletServiceContext.java:108)
> ...
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> 2009-08-22 17:21:17.128::INFO: Started [email protected]:8888
> [INFO] Started Jetty Server
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.