On 07/11/2011 11:57, Andre Juffer wrote:
Hi,

I have the following pipeline in a sitemap of some block. This pipeline is called by other blocks, that have components in place to upload images. They subsequently connect to the image block to store it in an image database.

The pipeline uses a self made Generator, that requires two parameters ('creatorId' and 'filename').

<map:match pattern="create/image/creator/*">
<map:generate type="new-image">
<map:parameter name="creatorId" value="{map:1}" />
<map:parameter name="filename"
                   value= {jexl:cocoon.request.filename}" />
</map:generate>
<map:serialize type="xml"/>
</map:match>

Other blocks call this pipeline with a request like

http://localhost:8888/img/create/image/creator/3276800?filename=/tmp/3276800-tribc-eap-areal-view.jpg

The value of 'creatorId' is always null, although it should have been '3276800'. The value of 'filename' is OK.

Looking through the sitemap of the sample application, I did not find a case like the one above:

<map:parameter name="creatorId" value="{map:1}" />

My question: Is it possible to create parameter values from the request itself (that is, other than using request parameters)?

Of course it is possible: take a look at line 188 of [1]; moreover, in C3 you can also use named matches: take a look at line 40 for this.

I can of course modify the request such that the creatorId is also regular request parameter, but I would like to have an answer to this question.

[1] http://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/COB-INF/sitemap.xmap

--
Francesco Chicchiriccò

Apache Cocoon Committer and PMC Member
http://people.apache.org/~ilgrosso/


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to