David Crossley wrote:
Torsten Stolpmann wrote:

David Crossley wrote:


...

Or as Tim suggested, your copying of the core sitemap needs
some tweaks to point to resources in the parent sitemap.


Exactly this is what I like to find out. The naive approach of duplicating and modifying the content of the core sitemap (or relevant parts thereof) does not seem to hold. But even with the much improved documentation regarding sitemaps I'm pretty much clueless on how to proceed from here.

http://forrest.apache.org/docs_0_70/your-project.html#sitemap.xmap

If you can provide a patch that improves on the docs (via Jira) it will be most welcome.

Would you please explain what you are trying to achieve
with your "intended changes". Perhaps there is a better way.


Sure. Nothing fancy actually. We implemented a 'news'-box in our skin which displays below the menu the last n items from an RSS feed we will provide. So besides the usual tab, menu and body stuff we need another pipeline providing the rss content. Since this has to be present on every page the skinning process appears to be the right place.

This is already implemented and works very well but only if the changes to the sitemap are present in the forrest core sitemap.

Slightly off topic. We have a plugin in the whiteboard that processes RSS feeds. It doesn't include the results in the skin like yours does, unless you use the new Dispatcher features in 0.8-dev. However, I wonder if any of your work would be useful in that plugin? In particular I am thinking about the RSS to XDoc stylesheets.

See http://forrest.apache.org/pluginDocs/plugins_0_70/org.apache.forrest.plugin.input.feeder/

For the <map:match pattern="*.html"> and
the <map:match pattern="**/*.html"> blocks the changes consist of an additional <map:part src="cocoon:/news/news.xml"/> statement.


For that sort of change, i recommend that you
make your adjustments directly to the core sitemap.

I disagree. Modifying the core sitemap will create problems upgrading to future versions of Forrest as the changes will have to be merged, and there are *lots* of changes in the next release. By doing it in a project sitemap there should be no need to edit the extension.

I think you will also need to copy the "skinit" resource into your project sitemap to make this work, but try it without first (less maintenance when upgrading).

An alternative approach would be to use an internal plugin. However, in this case since the Dispatcher will make doing this kind of thing much easier the plugin is unlikely to be reused. Therefore I wouldn't bother with the extra overhead.

The project sitemap is not really intended to over-ride
the core in this way. See comments by Tim earlier in this
thread.

There is no problem with the project sitemap overriding core. In fact it is designed to do so. Just make sure the only matches in your sitemap are for the pipelines you want to override. In this case the "**.html" ones.

Ross