cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Huttar" <>
Subject RE: Error: The Saxon DOM cannot be updated
Date Sat, 31 Jul 2004 20:18:59 GMT
Thanks, Colin.

Strange. I have the same configuration as you do,
except that xslt-saxon was not the default transformer.
I tried making xslt-saxon the default, and got the same

Namely, when I try to use an XSLT 2.0 stylesheet under
Cocoon 2.1.5 / Jetty with this configuration, I get an error
in core.log:
ERROR   (2004-07-31) 14:38.46:091   [core.xslt-processor]
(/cvsmount/ethnologue/test-name-index/xslt-saxon/2/Tiny) PoolThread-4/XSLTProcessorImpl: Cannot
find the requested TrAX factory 'net.sf.saxon.TransformerFactoryImpl'. Using default TrAX
Transformer Factory instead.

Checking system-property('xsl:vendor') confirms that saxon isn't
being used.

I just moved the saxon7.jar (I've been trying both saxon7 and
saxon8) from lib/local to lib/endorsed.
Now it works!!
And there is great rejoicing!

Still... can someone explain this to me? Was Saxon being
"shadowed" by Xalan (because xalan*.jar was in lib/endorsed,
and so came first in the classpath)?  Will I now be unable to use Xalan?
I would be surprised that one would shadow the other, since
'net.sf.saxon.TransformerFactoryImpl' should be a class name unique
to Saxon.

How come Colin was able to use Saxon although his saxon8.jar file lived
in lib/local?

I have restarted Jetty several times with saxon8.jar in lib/local
and it didn't fix the problem, so I know that's not it.


> -----Original Message-----
> From: Colin Paul Adams []
> Sent: Friday, July 30, 2004 5:53 PM
> To:
> Cc:
> Subject: Re: Error: The Saxon DOM cannot be updated
> >>>>> "Lars" == Lars Huttar <> writes:
>     Lars> Thanks...  can you show me the relevant part of your
>     Lars> cocoon.xconf and sitemap.xmap where the Saxon tranformer is
>     Lars> declared, and tell me where you keep your saxon .jar file?
> 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="transformer-factory"
> value="net.sf.saxon.TransformerFactoryImpl"/>
>   </component>
> Sitemap:
>     <map:transformers default="xslt-saxon">
>       <map:transformer name="xslt-saxon" pool-grow="2"
> pool-max="32" pool-min="8"
> src="org.apache.cocoon.transformation.TraxTransformer">
> 	<use-request-parameters>false</use-request-parameters>
> 	<use-browser-capabilities-db>false</use-browser-capabilities-db>
> 	<xslt-processor-role>saxon</xslt-processor-role>
>       </map:transformer>
>       <map:transformer name="i18n"
> src="org.apache.cocoon.transformation.I18nTransformer">
> 	<catalogues default="forms">
> 	  <catalogue id="forms" name="FormsMessages"
> location="messages"/>
> 	</catalogues>
> 	<cache-at-startup>true</cache-at-startup>
>       </map:transformer>
>       <map:transformer logger="forms" name="forms"
>     </map:transformers>
> I put the saxon8.jar in lib/local
> --
> Colin Paul Adams
> Preston Lancashire
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message