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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]