[
https://issues.apache.org/jira/browse/FOR-993?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12489109
]
Ross Gardler commented on FOR-993:
----------------------------------
You are mixing a number of issues here:
"The locationmap is normally found in %PROJECT_HOME%/src/documentation/content/
directory "
Yes, this is the location for *project* supplied locationmaps
"However for Plugins all the locationmap.xml files are located in %pluginHome%/
root directory. "
A plugin provided locationmap is *not* a project locationmap. If the docs for
the plugin need a locationmap then it will be in src/documentation/content.
The plugin locationmap is the default configuration provided by the plugin and
is unrelated to the project locationmap.
---
"ERROR (2007-04-16) 19:13.27:578 [core.modules.mapper.lm] (/index.html)
PoolThread-4/SelectNode: Ignoring locationmap config exception: Unable to build
LocationMap. "
That should be a warning, read on and you see:
"Caused by: java.io.FileNotFoundException:
D:\Apache2\apache-forrest-0.8\build\plugins\org.apache.forrest.plugin.input.glossary\src\documentation\content\locationmap.xml
(The system cannot find the file specified) "
So what is not being dound is a *project* specific locationmap for the
documentation for the glossary plugin. Project locationmaps are optional, so
this is not an error, only a warning.
---
"The locationmap.xml file for plugins is not being looked for in root but in
the content directory. "
No, they plugin locationmap is the one from the root, the *project* locationmap
is in the content directory and is optional.
---
"I moved the locationmap.xml file from root to /content/ and the errors went
away. "
Yes, they would do.
Original situation was that the project (i.e. the plugin docs) did not provide
a project specific locationmap to override any of the defaults set by the
glossary plugin itself.
New situation (after your copy) the project provides a locationmap config that
is identical to the default config provided by the glossary plugin.
Result - no apparent difference in behaviour, but a performance hit in that
there are now more elements in the locationmap to process.
(Note, I am assuming that you did not clean the [FORREST_HOME]/build/plugins
directory after moving the locationmap, this results in the new local deploy
having the new locationmap in the project, but leaving the old one in place as
well)
---
This issue is about reporting an error that is actually a warning.
There are two ways to avoid this:
1) report as a warning not an error
or
2) force all projects to have a default locationmap (that would normally be
empty)
We most certainly should not move the locaitonmap.
> Plugins are not finding the Locatiomap
> --------------------------------------
>
> Key: FOR-993
> URL: https://issues.apache.org/jira/browse/FOR-993
> Project: Forrest
> Issue Type: Bug
> Components: Plugins (general issues)
> Affects Versions: 0.8-dev
> Reporter: Gavin
> Fix For: 0.9
>
>
> Whilst checking error logs for another issue, I spotted that the locationmap
> was not being found.
> So I tried it in serveral plugins, all with the same result, the locationmap
> is not being found.
> The locationmap is normally found in
> %PROJECT_HOME%/src/documentation/content/ directory
> Our own site docs it can be found in site-author/content.
> However for Plugins all the locationmap.xml files are located in
> %pluginHome%/ root directory.
> The locationmap.xml file for plugins is not being looked for in root but in
> the content directory.
> Example :-
> ERROR (2007-04-16) 19:13.27:578 [core.modules.mapper.lm] (/index.html)
> PoolThread-4/SelectNode: Ignoring locationmap config exception: Unable to
> build LocationMap.
> org.apache.avalon.framework.configuration.ConfigurationException: Unable to
> build LocationMap.
> at
> org.apache.forrest.locationmap.lm.MountNode.loadConfiguration(MountNode.java:129)
> at
> org.apache.forrest.locationmap.lm.MountNode.getLocationMap(MountNode.java:87)
> at
> org.apache.forrest.locationmap.lm.MountNode.locate(MountNode.java:157)
> at
> org.apache.forrest.locationmap.lm.SelectNode.locate(SelectNode.java:110)
> at
> org.apache.forrest.locationmap.lm.LocatorNode.locate(LocatorNode.java:122)
> at
> org.apache.forrest.locationmap.lm.LocationMap.locate(LocationMap.java:276)
> at
> org.apache.forrest.locationmap.LocationMapModule.getAttribute(LocationMapModule.java:203)
> at
> org.apache.cocoon.components.treeprocessor.variables.PreparedVariableResolver.processModule(PreparedVariableResolver.java:246)
> at
> org.apache.cocoon.components.treeprocessor.variables.PreparedVariableResolver.resolve(PreparedVariableResolver.java:197)
> at
> org.apache.cocoon.components.treeprocessor.sitemap.SelectNode.invoke(SelectNode.java:77)
> 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:853)
> at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:354)
> at
> org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
> at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
> at
> org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
> at org.mortbay.http.HttpServer.service(HttpServer.java:879)
> at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
> at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
> at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
> at
> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
> at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
> at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)
> Caused by: org.apache.excalibur.source.SourceNotFoundException: Exception
> during processing of cocoon://locationmap-project.xml
> at
> org.apache.cocoon.components.source.impl.SitemapSource.getInputStream(SitemapSource.java:207)
> at
> org.apache.forrest.locationmap.lm.MountNode.loadConfiguration(MountNode.java:125)
> ... 32 more
> Caused by: org.apache.cocoon.ResourceNotFoundException: Resource not found.
> at <map:serialize type="xml"> -
> file:/D:/Apache2/apache-forrest-0.8/main/webapp/sitemap.xmap:364:36
> at <map:generate> -
> file:/D:/Apache2/apache-forrest-0.8/main/webapp/sitemap.xmap:363:66
> at
> org.apache.cocoon.components.source.SourceUtil.handle(SourceUtil.java:377)
> at
> org.apache.cocoon.components.source.SourceUtil.getInputSource(SourceUtil.java:450)
> at
> org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:281)
> at
> org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:118)
> at
> org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:537)
> at
> org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:174)
> at
> org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:437)
> at
> org.apache.cocoon.components.source.impl.SitemapSource.getInputStream(SitemapSource.java:199)
> ... 33 more
> Caused by: org.apache.excalibur.source.SourceNotFoundException:
> file:/D:/Apache2/apache-forrest-0.8/build/plugins/org.apache.forrest.plugin.input.glossary/src/documentation/content/locationmap.xml
> doesn't exist.
> at
> org.apache.excalibur.source.impl.FileSource.getInputStream(FileSource.java:150)
> at
> org.apache.cocoon.components.source.SourceUtil.getInputSource(SourceUtil.java:445)
> ... 39 more
> Caused by: java.io.FileNotFoundException:
> D:\Apache2\apache-forrest-0.8\build\plugins\org.apache.forrest.plugin.input.glossary\src\documentation\content\locationmap.xml
> (The system cannot find the file specified)
> at java.io.FileInputStream.open(Native Method)
> at java.io.FileInputStream.<init>(FileInputStream.java:106)
> at
> org.apache.excalibur.source.impl.FileSource.getInputStream(FileSource.java:146)
> ... 40 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.