forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ross Gardler <rgard...@apache.org>
Subject Re: lm question for our docs
Date Tue, 23 May 2006 14:02:19 GMT
Ferdinand Soethe wrote:
> 
> 
> 
> 
> 
> Ross Gardler wrote:
> 
> 
>>Unfortunately, it won't quite work the way you want because the syntax
>>for url rewriting and locationmap lookup is different. Therefore to 
>>change the behaviour requires a change in the site.xml file.
> 
> 
> Since I need this for the lm-docs anyhow, what exactly won't work. The
> example I had in mind was very similar to yours except for the second
> URL.
> 
> <v0.9 label="0.9-dev" href="lm:core.docs.0_90"/>
> 
> and in the site-author locationmap you have:
> 
> <map pattern="core.docs.*">
>    <select>
>      <location src="{project:content}/docs_{1}"/>
>      <location src="{http://forrest.apache.org/docs_{1}"/>
>    </select>
> </map>
> 
> Why do I need this extra page

You are still mixing th two concepts of a client URL rewrite and an 
internal location lookup.

An URL in the source document, in this case site.xml, of the form 
lm:some.location is a rewrite, it results in the URL in the output 
document being replaced with what is found in the locationmap.

So, if you use the above with a site.xml entry of 
href="lm:core.docs.0_90" what gets returned to the browser is something 
like href="src/documentation/content/xdocs/docs_0_90" in the case of the 
first match (which is wrong) or 
href="http://forrest.apache.org/docs_0_90" in the second case (which is 
right).

On the other hand if we let forrest use the locationmap for a lookup of 
the source file by having site.xml say href="docs_0_90/index.html", then 
forrest will look for the source file to generate this page in either 
"src/documentation/content/xdocs/docs_0_90/index.xml" (which is right) 
in the first match or "http://forrest.apache.org/docs_0_90/index.xml" in 
the second match (which is potentially wrong).

Why is the second wrong?

Well now you ask the question it isn't, strictly speaking, wrong. We 
could publish the source XML to the web site and this would work just 
fine. But we don't really want all those users pulling the live docs 
from our server each time they build theie local docs. It will add 
unnecessary load to the servers.

So we need a solution that works locally, hence we fall back to a 
placeholder page that tells the user the docs are available online. As 
David already pointed out this is very similar to what we did with the 
0.7 release, the advantage of using the locationmap is that we can 
create a system now that will work seamlessly with the subsequent 
releases. The question is, is it worth the effort now, to save a little 
time on each release? Your call.

Ross

Ross

Mime
View raw message