cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Grzegorz Kossakowski <gkossakow...@apache.org>
Subject Re: Cocoon 2.2 - referencing local pipelines from map:part src
Date Mon, 07 Jan 2008 23:11:35 GMT
Rainer Pruy pisze:
> Hallo,
> I got somehow lost on trying to change from a 2.1.x habit of using map:resource referencing
pipelines via "cocoon:" protocol to
> something more appropriate with cocoon 2.2.
> 
> As I failed miserably on finding a suitable reference on this, I'm trying with the list.....
> 
> From available doc and following infos from the list I got convinced that using servlet:
protocol is the way to go.
> However, with such I always get "No dispatcher" errors.

Hello Rainer,

Although I'm not familiar to "No dispatcher" error I will try to be helpful.

> The relevant pipeline fragment is currently:
> 
> 
> ------------------------------
>   <map:pipelines>
>            <map:match pattern="**">
>                    <map:aggregate element="page" ns="http://www.acrys.com/risc-1.0"
prefix="ns" label="content">
>                            <map:part src="servlet:research:/research-nav"/>
>                            <map:part src="servlet:research:/research-src"/>
>                    </map:aggregate>
>                    <map:transform src="resource/internal/page.xsl"/>
>                    <map:serialize type="html"/>
>            </map:match>
>     </map:pipeline>

First of all, if you reference pipeline from the same sitemap you can drop connection name
and use
shortened version, e.g.:
servlet:/research-nav

>    <map:pipeline id="parts" internal-only="true">

I'm not 100% sure but I guess that servlet: won't work with internal-only pipelines because
pipeline
engine does not recognize servlet: requests as coming from Cocoon. If my guess is right, it's
definitively a bug but fix for it should be quite trivial. If you confirm there is a bug,
create a
bug report, please.

>          <map:match name="research-nav">
>                  <map:generate type="research">
>                      <map:parameter name="mode" value="navigate"/>
>                          <map:parameter name="modeinfo" value="../{1}"/>
>                          <map:parameter name="area" value="{request-param:area}"/>
>                      <map:parameter name="idx" value="{request-param:idx}"/>
>                  </map:generate>
>          </map:match>
>          <map:match name="research-src">
>                   <map:generate type="research">
>                       <map:parameter name="mode" value="../{1}"/>
>                           <map:parameter name="area" value="{request-param:area}"/>
>                           <map:parameter name="idx" value="{request-param:idx}"/>
>               </map:generate>
>          </map:match>
>            <map:match pattern="navigate">
>                  <map:generate type="research">
>                      <map:parameter name="mode" value="navigate"/>
>                          <map:parameter name="modeinfo" value="summary"/>
>                          <map:parameter name="area" value="{request-param:area}"/>
>                      <map:parameter name="idx" value="{request-param:idx}"/>
>                  </map:generate>
>                  <map:transform src="resource/internal/page.xsl"/>
>                  <map:serialize type="html"/>
>            </map:match>
>  </map:pipelines>
> ------------------------------
> (The "research" generator is a special local component)
> 
> The block is mapped to prefix "/research".
> Using url "http://localhost:8888/research/summary" from a browser leads to an error page
being shown

I guess you are confusing here two things: mount-path ("/research") and connections between
servlets. If it's the same servlet (the same sitemap) you don't need any connection name.

I hope that helps a little.

-- 
Grzegorz Kossakowski
Committer and PMC Member of Apache Cocoon
http://reflectingonthevicissitudes.wordpress.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Mime
View raw message