The introduction of CVS based descriptors into the gump profile has introduced a few problems with the generation of the gump html pages. I thought it was worth discussing before trying to fix it (well, actually I started to fix it but it was *hard*).
Two examples: If you click the definition link on this page http://jakarta.apache.org/builds/gump/latest/Forrest.html you will end up at an empty page. If you click the same link on this page http://jakarta.apache.org/builds/gump/latest/excalibur-baxter.html you end up at the gump project definition. This behaviour comes about because the code which processes the hrefs in Jenny.jar removes all but the filename (without extension). which it then stores in the "defined-in" attribute. This will eventually be mapped to module_${defined_in} which gump presently expects to find in a file. For forrest, with its moule def of <module href="http://cvs.apache.org/viewcvs/~checkout~/xml-forrest/forrest.xgump"/> Gump looks for the definition in project/forrest.xml which does not exist. For Excalibur, with <module href="http://cvs.apache.org/viewcvs/~checkout~/jakarta-avalon-excalibur/gump.xml"/> Gump looks for project/gump.xml which it finds but which is not related to excalibur There is also an issue with href handling. Gump does not really handle relative hrefs. Effectively it evaluates all hrefs against a base of ".". If the above module definitions where to specify project elements with relative hrefs, Gump would still end up looking in the local directory where gump is being run for the project XML files. For the first issue, potential solutions would be to copy the remote hrefs to a local cache and to use names based on the name attribute rather than the name of the file containing the element definition. For the href handling, I began to convert Gump to start using URLs and tracking where the elements were defined so that relative hrefs could be correctly resolved. This is OK but the current hrefs in gump's profile are relative to the Gump root directory. For example, the module href in the gump.xml profile definition for ant is <module href="project/jakarta-ant.xml"/> but this should really be <module href="../project/jakarta-ant.xml"/> There could be a lot of special cases to handle this in a backward compatible way. I could think of a few more radical ideas, new attributes for real relative hrefs, base attributes on the <profile> element, something like <profile name="gump" base="..">, etc. Thoughts? Conor -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
