You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Fleischer Roman <ro...@siemens.com> on 2003/09/15 14:50:36 UTC

Using Saxon 7.6 with cocoon2.1

Hi,

does anybody a solution for using saxon instead of xalan? I´m using
cocoon2.1 and try to change the XSLT-Processor to Saxon. In the cocoon.xconf
I added the entry

<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="false"/>
  <parameter name="transformer-factory"
value="net.sf.saxon.TransformerFactoryImpl"/>
</component>

and in the sitemap.xmap:

<map:transformer name="xslt" pool-grow="2" pool-max="32" pool-min="8"
src="org.apache.cocoon.transformation.TraxTransformer">
	<use-request-parameters>false</use-request-parameters>
	<use-session-parameters>false</use-session-parameters>
	<use-cookie-parameters>false</use-cookie-parameters>
	
<xslt-processor-role>org.apache.excalibur.xml.xslt.XSLTProcessor/saxon</xslt
-processor-role>
</map:transformer> 

I copied the files saxon.jar and saxon-jdom.jar to the lib-directory of
cocoon,but I get the following error:

Original Exception: javax.xml.transform.TransformerException: Cannot compare
xs:boolean to xs:string at
net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:
105) at
org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:91)
at
org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer
.java:529) at
org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XMLByteStrea
mInterpreter.java:120) at
org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserialize(XMLByt
eStreamInterpreter.java:110) at
org.apache.cocoon.components.profiler.ProfilingXMLPipe.endDocument(Profiling
XMLPipe.java:136) at
org.apache.cocoon.generation.RequestGenerator.generate(RequestGenerator.java
:215) at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLP
ipeline(AbstractProcessingPipeline.java:548) at
org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline
.processXMLPipeline(AbstractCachingProcessingPipeline.java:196) at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(Abs
tractProcessingPipeline.java:492) at
org.apache.cocoon.components.profiler.ProfilingCachingProcessingPipeline.pro
cess(ProfilingCachingProcessingPipeline.java:290) at
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(Seri
alizeNode.java:150).................................. 

Do I need a special excalibur-util like:
"avalon-excalibur/xmlutil/src/java/org/apache/excalibur/xml/xpath
Saxon6ProcessorImpl.java Saxon7ProcessorImpl.java"? Where can I get this
util?

Thanks for any help

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Re: Using Saxon 7.6 with cocoon2.1

Posted by Stephan Niedermeier <ma...@logabit.com>.
Maybe this helps?

http://wiki.cocoondev.org/Wiki.jsp?page=DocbookTransformation

----- Original Message ----- 
From: "Fleischer Roman" <ro...@siemens.com>
To: <us...@cocoon.apache.org>
Sent: Monday, September 15, 2003 2:50 PM
Subject: Using Saxon 7.6 with cocoon2.1


Hi,

does anybody a solution for using saxon instead of xalan? I´m using
cocoon2.1 and try to change the XSLT-Processor to Saxon. In the cocoon.xconf
I added the entry

<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="false"/>
  <parameter name="transformer-factory"
value="net.sf.saxon.TransformerFactoryImpl"/>
</component>

and in the sitemap.xmap:

<map:transformer name="xslt" pool-grow="2" pool-max="32" pool-min="8"
src="org.apache.cocoon.transformation.TraxTransformer">
<use-request-parameters>false</use-request-parameters>
<use-session-parameters>false</use-session-parameters>
<use-cookie-parameters>false</use-cookie-parameters>

<xslt-processor-role>org.apache.excalibur.xml.xslt.XSLTProcessor/saxon</xslt
-processor-role>
</map:transformer>

I copied the files saxon.jar and saxon-jdom.jar to the lib-directory of
cocoon,but I get the following error:

Original Exception: javax.xml.transform.TransformerException: Cannot compare
xs:boolean to xs:string at
net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:
105) at
org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:91)
at
org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer
.java:529) at
org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XMLByteStrea
mInterpreter.java:120) at
org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserialize(XMLByt
eStreamInterpreter.java:110) at
org.apache.cocoon.components.profiler.ProfilingXMLPipe.endDocument(Profiling
XMLPipe.java:136) at
org.apache.cocoon.generation.RequestGenerator.generate(RequestGenerator.java
:215) at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLP
ipeline(AbstractProcessingPipeline.java:548) at
org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline
.processXMLPipeline(AbstractCachingProcessingPipeline.java:196) at
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(Abs
tractProcessingPipeline.java:492) at
org.apache.cocoon.components.profiler.ProfilingCachingProcessingPipeline.pro
cess(ProfilingCachingProcessingPipeline.java:290) at
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(Seri
alizeNode.java:150)..................................

Do I need a special excalibur-util like:
"avalon-excalibur/xmlutil/src/java/org/apache/excalibur/xml/xpath
Saxon6ProcessorImpl.java Saxon7ProcessorImpl.java"? Where can I get this
util?

Thanks for any help

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Re: Using Saxon 7.6 with cocoon2.1

Posted by Joerg Heinicke <jh...@virbus.de>.
Hello Roman,

AFAIK you don't need anything specific in Excalibur XML util. Saxon is TRaX 
compatible and so it should work.

 From the error I guess you have an error in an XML file that's validated 
against an XML Schema ("Cannot compare xs:boolean to xs:string ..."). I 
don't know of any default usage of XML Schema in Cocoon, so you have to look 
where you use it.

Regards,

Joerg

Fleischer Roman wrote:
> Hi,
> 
> does anybody a solution for using saxon instead of xalan? I´m using
> cocoon2.1 and try to change the XSLT-Processor to Saxon. In the cocoon.xconf
> I added the entry
> 
> <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="false"/>
>   <parameter name="transformer-factory"
> value="net.sf.saxon.TransformerFactoryImpl"/>
> </component>
> 
> and in the sitemap.xmap:
> 
> <map:transformer name="xslt" pool-grow="2" pool-max="32" pool-min="8"
> src="org.apache.cocoon.transformation.TraxTransformer">
> 	<use-request-parameters>false</use-request-parameters>
> 	<use-session-parameters>false</use-session-parameters>
> 	<use-cookie-parameters>false</use-cookie-parameters>
> 	
> <xslt-processor-role>org.apache.excalibur.xml.xslt.XSLTProcessor/saxon</xslt
> -processor-role>
> </map:transformer> 
> 
> I copied the files saxon.jar and saxon-jdom.jar to the lib-directory of
> cocoon,but I get the following error:
> 
> Original Exception: javax.xml.transform.TransformerException: Cannot compare
> xs:boolean to xs:string at
> net.sf.saxon.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:
> 105) at
> org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:91)
> at
> org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer
> .java:529) at
> org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XMLByteStrea
> mInterpreter.java:120) at
> org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserialize(XMLByt
> eStreamInterpreter.java:110) at
> org.apache.cocoon.components.profiler.ProfilingXMLPipe.endDocument(Profiling
> XMLPipe.java:136) at
> org.apache.cocoon.generation.RequestGenerator.generate(RequestGenerator.java
> :215) at
> org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLP
> ipeline(AbstractProcessingPipeline.java:548) at
> org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline
> .processXMLPipeline(AbstractCachingProcessingPipeline.java:196) at
> org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(Abs
> tractProcessingPipeline.java:492) at
> org.apache.cocoon.components.profiler.ProfilingCachingProcessingPipeline.pro
> cess(ProfilingCachingProcessingPipeline.java:290) at
> org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(Seri
> alizeNode.java:150).................................. 
> 
> Do I need a special excalibur-util like:
> "avalon-excalibur/xmlutil/src/java/org/apache/excalibur/xml/xpath
> Saxon6ProcessorImpl.java Saxon7ProcessorImpl.java"? Where can I get this
> util?
> 
> Thanks for any help

-- 
System Development
VIRBUS AG
Fon  +49(0)341-979-7419
Fax  +49(0)341-979-7409
joerg.heinicke@virbus.de
www.virbus.de


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org