cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Heinicke (JIRA) <>
Subject [jira] Updated: (COCOON-1881) Xinclude transformer has changed behaviour with Saxon 8.7.1
Date Thu, 12 Oct 2006 08:01:36 GMT
     [ ]

Jörg Heinicke updated COCOON-1881:

    Component/s: - Components: Sitemap
                     (was: Blocks: (Undefined))

> Xinclude transformer has changed behaviour with Saxon 8.7.1
> -----------------------------------------------------------
>                 Key: COCOON-1881
>                 URL:
>             Project: Cocoon
>          Issue Type: Bug
>          Components: - Components: Sitemap
>    Affects Versions: 2.1.8, 2.1.10-dev (current SVN)
>            Reporter: Philip Fennell
>         Attachments: xinclude.tar.gz
> With Windows XP sp2, Cocoon 2.1.8, Tomcat 5.5 and Saxon 8.6.1 or 8.7 configured as the
default XSLT transformer I was able to embed xi:include instructions within source documents
and have Cocoon's Xinclude processor resolve the URL (relative to the source document) correctly.
> e.g.
> <xi:include href="../../content/resources/site/login.xml">
>   <xi:fallback>login.xml not included.</xi:fallback> </xi:include>
> However, when I moved to Saxon 8.7.1 (and also with 8.7.3) the xinclude fails to locate
the referenced file unless I change the href attribute so that the url is relative to the
current Cocoon context.
> e.g.
> <xi:include href="content/resources/site/login.xml">
>   <xi:fallback>login.xml not included.</xi:fallback> </xi:include>
> Important Note:
> ===============
> It is important to understand that I am 'NOT' using Cocoon to process the requested document
but rather to process the request (by using Cocoon's request generator) information itself,
which includes a refernece to the original requested document. The request info is transformed
into an 'envelope' containing the request parameters, HTTP header info and an interface definition
file that may contain xi:include instructions that reference additional static content. It
is these xi:include instructions that are at the centre of the problem. The example is in:
> xinclude/interface/config/login.xml
> The Cocoon pipeline match that does all the work can be found starting at line 182 of
> During the processing, the requested content and referenced content merged and transformed
into XHTML within the main rendering transform:
> xinclude/interface/transforms/xhtml/screen.xsl
> ===============
> To run the test webapp that I have attached you will need to set-up Cocoon as follows:
> 1) Add the following lines to cocoon/WEB-INF/cocoon.xconf:
>   <component logger="core.xslt-processor"
>       role="org.apache.excalibur.xml.xslt.XSLTProcessor/saxon"
>       class="org.apache.excalibur.xml.xslt.XSLTProcessorImpl">
>     <parameter name="use-store" value="true"/>
>     <parameter name="incremental-processing" value="false"/>
>     <parameter name="transformer-factory" value="net.sf.saxon.TransformerFactoryImpl"/>
>   </component>
> after the Xalan component declaration.
> 2) Get Saxon 8.7 and 8.7.3 from and place the following jars
in cocoon/WEB-INF/lib
> saxon8.jar
> saxon8-dom.jar
> saxon8-xpath.jar
> 3) Unpack the attached ZIP file ( in your cocoon directory
> 4) Use the following link to access the test page:
> http://localhost:8080/cocoon/xinclude/interface/config/login.html
> (Depending on host and port number etc you may need to tweak this url.)

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message