[ 
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 selectchannelconnec...@0.0.0.0: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 selectchannelconnec...@0.0.0.0: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 selectchannelconnec...@0.0.0.0: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 selectchannelconnec...@0.0.0.0: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 selectchannelconnec...@0.0.0.0: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.

Reply via email to