You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Kees van Dieren <ke...@yahoo.com> on 2004/12/16 17:25:19 UTC
Mounting multiple subsitemaps into one main sitemap
Dear Cocoon users,
I try to mount three subsitemaps into one subsitemap.
However, only the first matching mount seems toe be
called; the second is never called.
My code in the main sitemap:
...
<map:pipelines>
<map:pipeline>
<!-- no match tag, always called! -->
<map:mount uri-prefix=""
src="../clientx/customizations.xmap"
check-reload="yes" reload-method="synchron"/>
</map:pipeline>
<map:pipeline>
<map:match pattern="module1">
<map:mount uri-prefix="module1"
src="../module1/module1-sitemap.xmap"
check-reload="yes" reload-method="synchron"/>
</map:match>
<map:match pattern="module2">
<map:mount uri-prefix="module2"
src="../module2/module2-sitemap.xmap"
check-reload="yes" reload-method="synchron"/>
</map:match>
</map:pipeline>
</map:pipelines>
...
The thing I woul like to happen, is the following:
- the main sitemap mounts customizations.xmap
- if there is a map:match in this sitemap, stop
processing the sitemap
- if there is no match continue with the main
sitemap (handling module1 or module2.)
However, Cocoon seems to stop processing the pipelines
of the main sitemap, after the first map:mount call
was made, even if there was no map:match executed in
the customization.xmap
I would like to have such a way of using the sitemap,
to override client-specificy code from the default
implementation in module1 or module2.
What am I doing wrong, or are there any other ways to
do handle this?
Kind regards,
Kees van Dieren
__________________________________
Do you Yahoo!?
All your favorites on one personal page � Try My Yahoo!
http://my.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org
Re: Mounting multiple subsitemaps into one main sitemap
Posted by Kees van Dieren <ke...@yahoo.com>.
Thanks!
I Generate a DTD containing the external entities,
which works great.
Met vriendelijke groeten,
Kees
--- Lars Huttar <la...@sil.org> wrote:
> Dag meneer...
> My understanding is that the behavior you described
> is the way
> <map:mount> works; once it is "executed" there is no
> return.
> That is of course why it usually occurs inside a
> <map:match> element.
>
> One way to do what you wanted to do would be to use
> an external entity:
>
> <map:pipeline>
> &client-cust;
>
> <map:match ...
>
> The external entity would be declared at the
> beginning of your sitemap.
>
> I haven't tried this but I think it would work.
>
> Lars
>
>
>
>
> Kees van Dieren wrote:
>
> >Dear Cocoon users,
> >
> >I try to mount three subsitemaps into one
> subsitemap.
> >
> >However, only the first matching mount seems toe be
> >called; the second is never called.
> >
> >My code in the main sitemap:
> >
> >...
> ><map:pipelines>
> > <map:pipeline>
> > <!-- no match tag, always called! -->
> > <map:mount uri-prefix=""
> >src="../clientx/customizations.xmap"
> >check-reload="yes" reload-method="synchron"/>
> > </map:pipeline>
> > <map:pipeline>
> > <map:match pattern="module1">
> > <map:mount uri-prefix="module1"
> >src="../module1/module1-sitemap.xmap"
> >check-reload="yes" reload-method="synchron"/>
> > </map:match>
> > <map:match pattern="module2">
> > <map:mount uri-prefix="module2"
> >src="../module2/module2-sitemap.xmap"
> >check-reload="yes" reload-method="synchron"/>
> > </map:match>
> > </map:pipeline>
> ></map:pipelines>
> >...
> >
> >The thing I woul like to happen, is the following:
> >- the main sitemap mounts customizations.xmap
> > - if there is a map:match in this sitemap, stop
> >processing the sitemap
> > - if there is no match continue with the main
> >sitemap (handling module1 or module2.)
> >
> >However, Cocoon seems to stop processing the
> pipelines
> >of the main sitemap, after the first map:mount call
> >was made, even if there was no map:match executed
> in
> >the customization.xmap
> >
> >I would like to have such a way of using the
> sitemap,
> >to override client-specificy code from the default
> >implementation in module1 or module2.
> >
> >What am I doing wrong, or are there any other ways
> to
> >do handle this?
> >
> >Kind regards,
> >
> >Kees van Dieren
> >
> >
> >
>
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> users-unsubscribe@cocoon.apache.org
> For additional commands, e-mail:
> users-help@cocoon.apache.org
>
>
__________________________________
Do you Yahoo!?
Send holiday email and support a worthy cause. Do good.
http://celebrity.mail.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org
Re: Mounting multiple subsitemaps into one main sitemap
Posted by Lars Huttar <la...@sil.org>.
Dag meneer...
My understanding is that the behavior you described is the way
<map:mount> works; once it is "executed" there is no return.
That is of course why it usually occurs inside a <map:match> element.
One way to do what you wanted to do would be to use an external entity:
<map:pipeline>
&client-cust;
<map:match ...
The external entity would be declared at the beginning of your sitemap.
I haven't tried this but I think it would work.
Lars
Kees van Dieren wrote:
>Dear Cocoon users,
>
>I try to mount three subsitemaps into one subsitemap.
>
>However, only the first matching mount seems toe be
>called; the second is never called.
>
>My code in the main sitemap:
>
>...
><map:pipelines>
> <map:pipeline>
> <!-- no match tag, always called! -->
> <map:mount uri-prefix=""
>src="../clientx/customizations.xmap"
>check-reload="yes" reload-method="synchron"/>
> </map:pipeline>
> <map:pipeline>
> <map:match pattern="module1">
> <map:mount uri-prefix="module1"
>src="../module1/module1-sitemap.xmap"
>check-reload="yes" reload-method="synchron"/>
> </map:match>
> <map:match pattern="module2">
> <map:mount uri-prefix="module2"
>src="../module2/module2-sitemap.xmap"
>check-reload="yes" reload-method="synchron"/>
> </map:match>
> </map:pipeline>
></map:pipelines>
>...
>
>The thing I woul like to happen, is the following:
>- the main sitemap mounts customizations.xmap
> - if there is a map:match in this sitemap, stop
>processing the sitemap
> - if there is no match continue with the main
>sitemap (handling module1 or module2.)
>
>However, Cocoon seems to stop processing the pipelines
>of the main sitemap, after the first map:mount call
>was made, even if there was no map:match executed in
>the customization.xmap
>
>I would like to have such a way of using the sitemap,
>to override client-specificy code from the default
>implementation in module1 or module2.
>
>What am I doing wrong, or are there any other ways to
>do handle this?
>
>Kind regards,
>
>Kees van Dieren
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org