> From: Brian Topping [mailto:[EMAIL PROTECTED]]
> > From: Ivelin Ivanov [mailto:[EMAIL PROTECTED]]
...
<skip what="resolver discussion: no comments" />
>
> > A sitemap expert should be able to help with this one.
> > If I am not mistaken {1} references the first variable in
> the current
> > sitemap,
> > while {../1} references the first variable in the parent sitemap.
>
> Yes, that is my experience too.
I wonder, how could you experience that? AFAIK nothing has changed since
I've checked it and it was like: {../1} references the parent pipeline
element returned params and not the sitemap. Look:
Request:
/cocoon/files/page.xml
Sitemap Entry:
<match pattern="*/*">
<match pattern="*.xml">
<!-- Use {1} to reference the inner matcher '*'
param = 'page'
{../1} - references the {1} in the parent
matcher = 'files'
{../2} - the {2} in the parent matcher =
'page.xml'
-->
<generate src="{../1}" />
</match>
</match>
Note, that there are also {0} params available. See sitemap.log to get what
are the available params and their values for every request.
Konstantin
>
> > What do you think the bug in AbstractXMLFormAction is?
>
> The <map:parameter> entities that are passed into the
> subclass of AbstractXMLFormAction improperly require {1} for
> the TreeProcessor to work; they should properly work with
> {../1} like the rest of the action. What I have described so
> far is a problem in the transitive closure of TreeProcessor,
> which may or may not include AbstractXMLFormAction. I don't
> know it yet, so I need to learn it. According to
> http://xml.apache.org/cocoon/userdocs/concepts/actions.html,
> "Communication Between Sitemap and Action", {1} should
> reference the current map object (the action) and {../1}
> should reference the previous one (the match). When
> <map:parameter name="xmlform-validator-schema"
> value="forms/{../1}/xmlform-sch-report.xml"/>, the
> TreeProcessor complains with
> "org.apache.cocoon.sitemap.PatternException: Error while
> evaluating 'form-{../1}' : not so many levels", when passed
> {1} for same parameter, getFormValidator complains with the
> original exception.
>
> So there is either a bug in my brain, in the
> semantics/documentation, or in the code. I'm more inclined
> to believe that AbstractXMLFormAction is being handed a bad
> SourceResolver, but I haven't looked at a single line of
> AbstractXMLFormAction yet. The overall semantics are pretty
> simple, thereby minimizing that I am just not groking it and
> pointing to a problem somewhere. But until I can send a
> patch, the code works by definition, right? :)
>
> Gotta get some sleep now. Don't sweat this too much, I just
> wanted to see if anyone recognized it. I'll work on it soon.
>
> -B
>
> >
> > ----- Original Message -----
> > From: "Brian Topping" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Thursday, June 06, 2002 5:46 AM
> > Subject: Parameterizing Sitemap with XMLForms
> >
> >
> > Hi all,
> >
> > So I am trying to parameterize a sitemap that I am using with
> > forms and
> > running into an interesting situation. I don't know enough
> > about components
> > and actions yet, but this may be a bug in
> > AbstractXMLFormAction. (I've
> > changed the names in the code below, but it's just Heidi's
> example...)
> >
> > Sitemap snippet:
> >
> > <map:match pattern="bill2forms/*.html">
> > <map:act type="HowtoWizardAction">
> > <!-- XMLForm parameters for the HowtoWizardAction -->
> > <map:parameter name="xmlform-validator-schema-ns"
> > value="http://www.ascc.net/xml/schematron"/>
> > <map:parameter name="xmlform-validator-schema"
> > value="forms/{1}/xmlform-sch-report.xml"/>
> > <map:parameter name="xmlform-id" value="form-{1}"/>
> > <map:parameter name="xmlform-scope" value="session"/>
> > <map:parameter name="xmlform-model"
> > value="com.bill2.site.xmlform.HowtoBean"/>
> > <!-- Content transformation logic -->
> > <map:generate src="forms/{../1}/{page}.xml"/>
> > <map:transform type="xmlform" label="xml"/>
> > <map:transform src="forms/{../1}/wizard2html.xsl"/>
> > <map:transform
> src="context://stylesheets/xmlform/xmlform2html.xsl"/>
> > <map:serialize type="html"/>
> > </map:act>
> > </map:match>
> >
> > If you look at the parameterization, all of the
> > <map:parameters> use "{1}",
> > but all the other components are sent "{../1}". This is what
> > it takes to
> > get the sitemap interpreter to be happy and put the start
> page on the
> > screen. But when it comes to clicking on the "Start" link on
> > the first form
> > page, the following exception is generated:
> >
> > org.apache.avalon.framework.CascadingRuntimeException:
> Failed loading
> > validating schema
> > at
> > org.apache.cocoon.acting.AbstractXMLFormAction.getFormValidato
> > r(AbstractXMLF
> > ormAction.java:365)
> > at
> > org.apache.cocoon.acting.AbstractXMLFormAction.getForm(Abstrac
> > tXMLFormAction
> > .java:179)
> > at
> > org.apache.cocoon.acting.AbstractXMLFormAction.act(AbstractXML
> > FormAction.jav
> > a:202)
> > at
> > org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode
> > .invoke(ActTyp
> > eNode.java:133)
> >
> > I wouldn't mind submitting the patch, but I'm not confident
> > enough yet of
> > the semantics of parameterization to know if I am doing the
> > right thing. I
> > presume that the problem is in AbstractXMLFormAction by the
> > fact that the
> > other components weren't changed, but that kind of hunch is
> not a very
> > responsible manner in which to submit a patch...
> >
> > If it takes longer to describe than it does to fix, I can
> > wait for the next
> > bug in order to put some work in. But I do want to learn about the
> > semantics of parameterization more, and I only really know
> > about {../*} from
> > a post that Vadim made a long time back. Is there a full
> > explanation of
> > this anywhere? (RTFM?)
> >
> > best,
> >
> > -b
> >
> > _________________________________________________________
> > If you have some ice cream, I will give it to you.
> > If you have no ice cream, I will take it away from you.
> > - Ice Cream Koan
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, email: [EMAIL PROTECTED]
> >
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, email: [EMAIL PROTECTED]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]