You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by "Hunsberger, Peter" <Pe...@stjude.org> on 2004/03/22 22:34:54 UTC

Transform runs twice

I've got a straight forward pipeline where it appears that a transform
runs twice:

            <map:match pattern="*/systemInformation**">
                <map:generate type="CTService"/>
                <map:transform src="stylesheets/resolve_sysInfo.xsl"/>
                <map:transform src="stylesheets/sysInfo.xsl"/>
                <map:serialize/>
            </map:match>

If I look at the pipeline output after the generator I have the expected
data.  If I capture that data and feed it into the resolve...xsl (using
Stylus or Xslerator) things work as expected.  If I capture the output
of the pipeline after the resolve...xsl I see two copies of the output
XML!!!!  The next transform then runs twice and I get the output XHTML
twice (complete with two top level <body> tags, which IE happily
accepts). 

I'm running Cocoon 2.1.4 with Saxon.  Any ideas on how to track this
down or what to look for? 

Peter Hunsberger



Re: Transform runs twice

Posted by Vadim Gritsenko <va...@reverycodes.com>.
Hunsberger, Peter wrote:

>I've got a straight forward pipeline where it appears that a transform
>runs twice:
>
>            <map:match pattern="*/systemInformation**">
>                <map:generate type="CTService"/>
>                <map:transform src="stylesheets/resolve_sysInfo.xsl"/>
>                <map:transform src="stylesheets/sysInfo.xsl"/>
>                <map:serialize/>
>            </map:match>
>
>If I look at the pipeline output after the generator I have the expected
>data.  If I capture that data and feed it into the resolve...xsl (using
>Stylus or Xslerator) things work as expected.  If I capture the output
>of the pipeline after the resolve...xsl I see two copies of the output
>XML!!!!  The next transform then runs twice and I get the output XHTML
>twice (complete with two top level <body> tags, which IE happily
>accepts). 
>
>I'm running Cocoon 2.1.4 with Saxon.  Any ideas on how to track this
>down or what to look for? 
>  
>

Saxon can do this when endDocument() is sent twice. Insert log 
transformer in between - check that generated SAX events are ok

Vadim