Stephan Coboos dijo:
> is more easier to understand than this:
>
> <map:match pattern="first">
> <map:call function="getValues"/>
> </map:match>
>
> <map:match pattern="second">
> <map:generate type="jxt"/>
> <map:serialize/>
> </map:match>
>
Did you already saw the advantage of this?:
<map:pipeline>
<map:match pattern="first">
<map:call function="getValues"/>
</map:match>
</map:pipeline>
<map:pipeline internal-only="true">
<map:match pattern="second">
<map:generate type="jxt"/>
<map:serialize/>
</map:match>
</map:pipeline>
No matter how they will try to go to "second" they MUST go through
"first". I like this feature of flow. :-D
AFAIK, in a webapp you can also review the authentication and authorization:
<map:pipeline internal-only="true">
<map:match pattern="fo-*.pdf">
<map:generate src="docs/informes/fo-{1}"/>
<map:transform src="stylesheets/fo-{1}2fo.xsl"/>
<map:serialize type="fo2pdf"/>
</map:match>
...
</map:pipeline>
<map:pipeline>
<map:match pattern="*">
<map:call function="protect">
<map:parameter name="handler" value="authhandler"/>
<map:parameter name="protected-internal" value="{1}"/>
<map:parameter name="failure-redirect" value="/login?resource={1}"/>
</map:call>
</map:match>
</map:pipeline>
Instead of the old approach using actions:
<!-- PDF docs -->
<map:match pattern="*-*.pdf">
<map:act type="auth-protect">
<map:parameter name="handler" value="auth_handler"/>
<map:act type="xsp-action"
src="resources/xsp-actions/auth-control-access.xsp">
<map:parameter name="handler" value="auth_handler"/>
<map:parameter name="authorisation" value="pdf_docs"/>
<!-- Output PDF docs -->
<map:match pattern="fo-*.pdf">
<map:generate src="docs/informes/fo-{1}"/>
<map:transform src="stylesheets/fo-{1}2fo.xsl"/>
<map:serialize type="fo2pdf"/>
</map:match>
</map:act>
</map:act>
</map:match>
What is easier? For sure using Flow. :-D
Best Regards,
Antonio Gallardo.