I'm hacking Forrest so that users can add their documents to the Forrest processing.
First of all, from the root sitemap I mount their sitemap in a separate uri space if it's found ({project:sitemap} contains the URL to the user sitemap):
<map:match pattern="project_sitemap/**">
<map:select type="exists">
<map:when test="{project:sitemap}">
<map:mount uri-prefix="project_sitemap"
src="{project:sitemap}"
check-reload="yes" />
</map:when>
</map:select>
</map:match>Then, in another subsitemap, where Forrest searches for source files, I want to see if the user sitemap has an xml file to serve me for the current URI, and if so, use it:
<map:select type="exists">
<map:when test="cocoon://project_sitemap/{uri}.xml">
<map:generate src="cocoon://project_sitemap/{uri}.xml" />
<map:serialize type="xml-document"/>
</map:when>
...etcThe problem is that the test is always true IIUC, and the result is an 'Attempted to process incomplete pipeline.'
In fact IIUC, in SitemapSource I see:
/**
*
* @see org.apache.excalibur.source.Source#exists()
*/
public boolean exists() {
return true;
}Any hint if/on how to make this work, or alternatives? I'm literally _drowning_ in this code.
--
Nicola Ken Barozzi [EMAIL PROTECTED]
- verba volant, scripta manent -
(discussions get forgotten, just code remains)
---------------------------------------------------------------------