cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robin Wyles <...@robinwyles.com>
Subject Re: Internal pipelines and servlet protocol
Date Mon, 03 Nov 2008 21:03:38 GMT
Hi Jeroen,

Below is a simple sitemap that reproduces the problem. Calling  
"internal-resource" results in a ResourceNotFoundException, while  
calling "external-resource" serves the file as expected. I've also  
taken the liberty of sending you a test block off-list so you can  
quickly test the problem.

Many thanks for your help with this...

Robin


<map:sitemap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://apache.org/cocoon/sitemap/1.0 http:// 
cocoon.apache.org/schema/sitemap/cocoon-sitemap-1.0.xsd"
  xmlns:map="http://apache.org/cocoon/sitemap/1.0">
   <map:pipelines>
     <!--+
         | Public pipelines
         +-->
     <map:pipeline id="test">
       <!-- Test to show inaccesibility of internal pipelines via  
servlet protocol. -->

       <map:match pattern="internal-resource">
       	<map:generate src="servlet:/resource/internal/test.xml"/>
       	<map:serialize type="html"/>
       </map:match>

       <map:match pattern="external-resource">
       	<map:generate src="servlet:/resource/external/test.xml"/>
       	<map:serialize type="html"/>
       </map:match>

     </map:pipeline>

     <!--+
         | Default pipelines
         +-->
     <map:pipeline id="internal-resource" internal-only="true">
       <!-- Put matchers for internal (accessible only to Cocoon  
blocks) resources here
         More details: http://cocoon.zones.apache.org/daisy/cdocs- 
site-main/g2/1345.html -->
       <map:match pattern="resource/internal/**">
         <map:read src="resource/internal/{1}"/>
       </map:match>
     </map:pipeline>

     <map:pipeline id="external-resource">
       <!-- Put matchers for external (accessible to the outside  
world, e.g. browser) resources here.
         More details: http://cocoon.zones.apache.org/daisy/cdocs- 
site-main/g2/1345.html -->
       <map:match pattern="resource/external/**">
         <map:read src="resource/external/{1}"/>
       </map:match>
     </map:pipeline>

     <map:pipeline id="service">
       <!-- Put your servlet service matchers here.
         More details: http://cocoon.zones.apache.org/daisy/cdocs- 
site-main/g2/1345.html -->
     </map:pipeline>
   </map:pipelines>

</map:sitemap>

On 3 Nov 2008, at 18:33, Jeroen Reijn wrote:

> Hi Robin,
>
> I've been lagging behind on my Cocoon related things for a while,  
> but where are you trying to fetch this internal pipeline from? Coul  
> you show us the part of a sitemap that calls the below matcher  
> (which does not work)?
>
> Regards,
>
> Jeroen
>
> Robin Wyles wrote:
>> Hi,
>> Can any devs shed some light on my previous question below?
>> Thanks,
>> Robin
>> On 27 Oct 2008, at 14:22, Robin Wyles wrote:
>>> Hi,
>>>
>>> In the default sitemap generated with the block archetype there  
>>> is a pipeline as follows:
>>>
>>> <map:pipeline id="internal-resource" internal-only="true">
>>>       <!-- Put matchers for internal (accessible only to Cocoon  
>>> blocks) resources here
>>>         More details: http://cocoon.zones.apache.org/daisy/cdocs- 
>>> site-main/g2/1345.html -->
>>>       <map:match pattern="resource/internal/**">
>>>         <map:read src="resource/internal/{1}"/>
>>>       </map:match>
>>>  </map:pipeline>
>>>
>>> On the docs page linked to above it states that blocks may have  
>>> "internal resources that are accessible to other block via  
>>> servlet: protocol". However, from my tests it seems that internal- 
>>> only pipelines are still not accessible from other blocks via the  
>>> servlet protocol. Am I going mad?
>>>
>>> How can I make pipelines which are only to be accessed by blocks  
>>> within my app inaccessible to the world at large?
>>>
>>> Cheers,
>>>
>>> Robin
>>>
>>> -------------------------------------------------------------------- 
>>> -
>>> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
>>> For additional commands, e-mail: users-help@cocoon.apache.org
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
>> For additional commands, e-mail: users-help@cocoon.apache.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
> For additional commands, e-mail: users-help@cocoon.apache.org
>


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


Mime
View raw message