On 20.Jun.2001 -- 04:20 PM, Vadim Gritsenko wrote: > I would not say why not to use <map:parameters> as elsewhere else... > Like: > <map:match pattern="test"> > <map:act type="form-validator"> > <map:parameter name="descriptor" value="context:///descriptor.xml"/> > <map:parameter name="validate-set" value="user-input"/> > <map:redirect-to resource="simple-page"> > <map:parameter name="target" value="OK"/> > </map:redirect-to> > </map:act> > <map:redirect-to resource="simple-page"> > <map:parameter name="target" value="ERROR"/> > </map:redirect-to> > </map:match> > > This would be much more consistent. Vadim, yes that's right. I have reworked the patch so that it stores the target value with key "target" and that it uses the get-parameter template which is what other templates use as well. This way target can be specified either as attribute or as child element. BUT get-parameter looks for <map:param name="target"></map:param> as opposed to <map:parameter name="target" value=""/> Two reasons why I wouldn't like to change this: 1) <map:parameter> is used with elements that can take an arbitrary number of parameters depending only on the instantiated class while here it is an optional attribute but there's not going to be another implementation of <map:redirect-to> at least it is not likely to have one configurable by the user. 2) I intent to use it in a setting where there's already a rather deep and complex tree and I would be glad to have this be a one-liner :-) Otherwise I could have written an action to create and fill a new map. Of cause there are other (negative) implications on that path so that wouldn't be a bright idea. Of cause this is only my opinion and I will support whatever the core developers decide on this. Anyway, thanks for the hint. Chris. -- C h r i s t i a n H a u l [EMAIL PROTECTED] fingerprint: 99B0 1D9D 7919 644A 4837 7D73 FEF9 6856 335A 9E08
? build ? sitemap.xsl-patch Index: src/org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl =================================================================== RCS file: /home/cvspublic/xml-cocoon2/src/org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl,v retrieving revision 1.18 diff -u -r1.18 sitemap.xsl --- src/org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl 2001/06/21 06:52:56 1.18 +++ src/org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl +2001/06/21 10:27:49 @@ -1163,6 +1163,16 @@ <!-- redirect to a internal resource definition --> <xsl:when test="@resource"> + <xsl:variable name="target"> + <xsl:call-template name="get-parameter"> + <xsl:with-param name="parname">target</xsl:with-param> + </xsl:call-template> + </xsl:variable> + <xsl:if test="string-length($target) > 0 and string($target) != +'""'"> + map = new HashMap(1); + map.put("target","<xsl:value-of select="$target"/>"); + listOfMaps.add(map); + </xsl:if> Class[] argTypes = new Class[] {StreamPipeline.class, EventPipeline.class, List.class, Environment.class, String.class, Boolean.TYPE}; Object[] argValues = new Object[] {pipeline, eventPipeline, listOfMaps, environment, cocoon_view, new Boolean(internalRequest)}; String methodName = "resource_" + substitute(listOfMaps, "<xsl:value-of select="translate(@resource, '- ', '__')"/>");
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]