[ https://issues.apache.org/jira/browse/FOR-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12655123#action_12655123 ]
David Crossley commented on FOR-1074: ------------------------------------- The workaround suggested by Antoine will do it. However that would include all jars, including those not used by the project that is being built. Perhaps use the same '<for list="${project.required.plugins}...' that we do currently, but also get the supporting jars directly from the plugin's source tree. However, remember that in a released version of Forrest, those sources are not local but are downloaded to the $FORREST_HOME/build directories. In the meantime, perhaps do a temporary fix to use the same '<for list="${project.required.plugins}...' that we do currently, but also include all jars whose name does not begin with "org.apache.forrest.plugin". > the war target needs to include supporting jars that are provided in each > plugin lib directory > ---------------------------------------------------------------------------------------------- > > Key: FOR-1074 > URL: https://issues.apache.org/jira/browse/FOR-1074 > Project: Forrest > Issue Type: Bug > Components: Launch servlet WAR, Plugins (general issues) > Affects Versions: 0.9-dev > Reporter: Thorsten Scherler > Priority: Blocker > Fix For: 0.9-dev > > > Do > cd testing > forrest seed > forrest war > cp build/my-project.war $CATALINA_HOME/webapps/tomcat.war > lynx http://localhost:8080/tomcat/ > => Internal Server Error > ==> webapps/tomcat/WEB-INF/logs/core.log <== > ERROR (2008-03-03) 09:49.45:186 [access] (/tomcat/) > http-8080-2/CocoonServlet: Internal Cocoon Problem > org.apache.cocoon.ProcessingException: Sitemap: error when calling sub-sitemap > at [Exception] - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at [ConfigurationException] - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at <map:mount> - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/project/build/tmp/output.xmap:33:147 > at <map:mount> - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/sitemap.xmap:533:106 > at > org.apache.cocoon.ProcessingException.throwLocated(ProcessingException.java:112) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:81) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:155) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:95) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:292) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:223) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:289) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:114) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:81) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:155) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:95) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:292) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:223) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:289) > at org.apache.cocoon.Cocoon.process(Cocoon.java:557) > at > org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:364) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:595) > Caused by: org.apache.avalon.framework.configuration.ConfigurationException: > Could not add component defined at > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at > org.apache.cocoon.core.container.CoreServiceManager.addComponent(CoreServiceManager.java:542) > at > org.apache.cocoon.components.container.CocoonServiceManager.addComponent(CocoonServiceManager.java:66) > at > org.apache.cocoon.core.container.DefaultServiceSelector.configure(DefaultServiceSelector.java:124) > at > org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector.configure(ComponentsSelector.java:101) > at > org.apache.avalon.framework.container.ContainerUtil.configure(ContainerUtil.java:201) > at > org.apache.cocoon.core.container.DefaultServiceSelector$Factory.setupInstance(DefaultServiceSelector.java:215) > at > org.apache.cocoon.core.container.ComponentFactory.newInstance(ComponentFactory.java:133) > at > org.apache.cocoon.core.container.handler.ThreadSafeComponentHandler.doInitialize(ThreadSafeComponentHandler.java:54) > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.initialize(AbstractComponentHandler.java:274) > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.getComponentHandler(AbstractComponentHandler.java:128) > at > org.apache.cocoon.core.container.CoreServiceManager.getComponentHandler(CoreServiceManager.java:680) > at > org.apache.cocoon.core.container.CoreServiceManager.addComponent(CoreServiceManager.java:532) > at > org.apache.cocoon.components.container.CocoonServiceManager.addComponent(CocoonServiceManager.java:66) > at > org.apache.cocoon.core.container.CoreServiceManager.parseConfiguration(CoreServiceManager.java:729) > at > org.apache.cocoon.core.container.CoreServiceManager.configure(CoreServiceManager.java:211) > at > org.apache.avalon.framework.container.ContainerUtil.configure(ContainerUtil.java:201) > at > org.apache.cocoon.components.treeprocessor.sitemap.SitemapLanguage.createServiceManager(SitemapLanguage.java:115) > at > org.apache.cocoon.components.treeprocessor.DefaultTreeBuilder.build(DefaultTreeBuilder.java:396) > 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.apache.cocoon.core.container.handler.PoolableComponentHandler$ProxyHandler.invoke(PoolableComponentHandler.java:147) > at $Proxy8.build(Unknown Source) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.buildConcreteProcessor(TreeProcessor.java:725) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.setupConcreteProcessor(TreeProcessor.java:394) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:288) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:114) > ... 34 more > Caused by: java.lang.Exception: Cannot find class > org.apache.cocoon.blocks.fop.FOPNGSerializer for component at > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.getComponentHandler(AbstractComponentHandler.java:77) > at > org.apache.cocoon.core.container.CoreServiceManager.getComponentHandler(CoreServiceManager.java:680) > at > org.apache.cocoon.core.container.CoreServiceManager.addComponent(CoreServiceManager.java:532) > ... 61 more > Caused by: java.lang.ClassNotFoundException: > org.apache.cocoon.blocks.fop.FOPNGSerializer > at java.net.URLClassLoader$1.run(URLClassLoader.java:200) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:188) > at java.lang.ClassLoader.loadClass(ClassLoader.java:306) > at java.lang.ClassLoader.loadClass(ClassLoader.java:251) > at > org.apache.cocoon.core.container.ComponentEnvironment.loadClass(ComponentEnvironment.java:77) > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.getComponentHandler(AbstractComponentHandler.java:75) > ... 63 more > ==> webapps/tomcat/WEB-INF/logs/error.log <== > ERROR (2008-03-03) 09:49.45:186 [access] (/tomcat/) > http-8080-2/CocoonServlet: Internal Cocoon Problem > org.apache.cocoon.ProcessingException: Sitemap: error when calling sub-sitemap > at [Exception] - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at [ConfigurationException] - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at <map:mount> - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/project/build/tmp/output.xmap:33:147 > at <map:mount> - > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/sitemap.xmap:533:106 > at > org.apache.cocoon.ProcessingException.throwLocated(ProcessingException.java:112) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:81) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:155) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:95) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:292) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:223) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:289) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:114) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:81) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:155) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:77) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:95) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:292) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:223) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:289) > at org.apache.cocoon.Cocoon.process(Cocoon.java:557) > at > org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:364) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:595) > Caused by: org.apache.avalon.framework.configuration.ConfigurationException: > Could not add component defined at > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at > org.apache.cocoon.core.container.CoreServiceManager.addComponent(CoreServiceManager.java:542) > at > org.apache.cocoon.components.container.CocoonServiceManager.addComponent(CocoonServiceManager.java:66) > at > org.apache.cocoon.core.container.DefaultServiceSelector.configure(DefaultServiceSelector.java:124) > at > org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector.configure(ComponentsSelector.java:101) > at > org.apache.avalon.framework.container.ContainerUtil.configure(ContainerUtil.java:201) > at > org.apache.cocoon.core.container.DefaultServiceSelector$Factory.setupInstance(DefaultServiceSelector.java:215) > at > org.apache.cocoon.core.container.ComponentFactory.newInstance(ComponentFactory.java:133) > at > org.apache.cocoon.core.container.handler.ThreadSafeComponentHandler.doInitialize(ThreadSafeComponentHandler.java:54) > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.initialize(AbstractComponentHandler.java:274) > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.getComponentHandler(AbstractComponentHandler.java:128) > at > org.apache.cocoon.core.container.CoreServiceManager.getComponentHandler(CoreServiceManager.java:680) > at > org.apache.cocoon.core.container.CoreServiceManager.addComponent(CoreServiceManager.java:532) > at > org.apache.cocoon.components.container.CocoonServiceManager.addComponent(CocoonServiceManager.java:66) > at > org.apache.cocoon.core.container.CoreServiceManager.parseConfiguration(CoreServiceManager.java:729) > at > org.apache.cocoon.core.container.CoreServiceManager.configure(CoreServiceManager.java:211) > at > org.apache.avalon.framework.container.ContainerUtil.configure(ContainerUtil.java:201) > at > org.apache.cocoon.components.treeprocessor.sitemap.SitemapLanguage.createServiceManager(SitemapLanguage.java:115) > at > org.apache.cocoon.components.treeprocessor.DefaultTreeBuilder.build(DefaultTreeBuilder.java:396) > 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.apache.cocoon.core.container.handler.PoolableComponentHandler$ProxyHandler.invoke(PoolableComponentHandler.java:147) > at $Proxy8.build(Unknown Source) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.buildConcreteProcessor(TreeProcessor.java:725) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.setupConcreteProcessor(TreeProcessor.java:394) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:288) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:114) > ... 34 more > Caused by: java.lang.Exception: Cannot find class > org.apache.cocoon.blocks.fop.FOPNGSerializer for component at > file:/home/thorsten/src/apache/apache-tomcat-6.0.14/webapps/tomcat/build/plugins/org.apache.forrest.plugin.output.pdf/output.xmap:21:120 > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.getComponentHandler(AbstractComponentHandler.java:77) > at > org.apache.cocoon.core.container.CoreServiceManager.getComponentHandler(CoreServiceManager.java:680) > at > org.apache.cocoon.core.container.CoreServiceManager.addComponent(CoreServiceManager.java:532) > ... 61 more > Caused by: java.lang.ClassNotFoundException: > org.apache.cocoon.blocks.fop.FOPNGSerializer > at java.net.URLClassLoader$1.run(URLClassLoader.java:200) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:188) > at java.lang.ClassLoader.loadClass(ClassLoader.java:306) > at java.lang.ClassLoader.loadClass(ClassLoader.java:251) > at > org.apache.cocoon.core.container.ComponentEnvironment.loadClass(ComponentEnvironment.java:77) > at > org.apache.cocoon.core.container.handler.AbstractComponentHandler.getComponentHandler(AbstractComponentHandler.java:75) > ... 63 more -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.