Maurice Lanselle wrote:
I am trying to integrate another content type, one based on a published document schema from a standards association (hr-xml.org).
It would be better to do this as a plugin as it would be useful to a wider community. Are you using 0.7? If not you cannot build it as a plugin. I would recomend changing to 0.7 (it is stable enough being very close to a release).
Building a plugin is really easy, see http://forrest.apache.org/0.7/docs/howto/howto-buildPlugin.html
However, it is not being transformed to xdoc; I think that I am having trouble with the "sitemap.xmap" interception and would appreciate clues as to how to get it right. I have simply copied the "download" example and changed "download" to "resume" :<map:pipeline> <map:match pattern="**Resume.xml"> <map:generate src="{project:content.xdocs}{1}Resume.xml" /><map:transform src="{project:resources.stylesheets}/resume2document.xsl" /><map:serialize type="xml"/> </map:match> </map:pipeline>However, when I try to use my test stylesheet as "resume2document", "ResumeExample2.html" has no content. When I pull "ResumeExample2.xml" in my browser, I get the raw untransformed xml file. So it looks like my stylesheet is not being applied, because my document is not matching the pattern. How should I fix my <map:pipeline> match in sitemap.xml?
The pipeline above matches "**Resume.xml", your file is called "ResumeExample2.xml" which will not be matched. You need a match of "Resume*.xml".
However, you should avoid limiting the URL space of your application by requiring a given file type to have a given filename or path. This can result in false matches. You should use the SourceTypeResolver, for an example of how see http://svn.apache.org/viewcvs.cgi/forrest/trunk/plugins/org.apache.forrest.plugin.input.simplified-docbook/input.xmap?view=markup for an example of how to do this.
{NOTE TO DEVS: fresh-site shows a custom DTD being used in the way Maurice is doing this, we need to update this sample - I'll add an issue)
Ross
