I think this was related to using a different XSLT transformer, right?
Let's say you have an XSLT transformer supporting JAXP (all of them, I suppose), and that that its tranformer factory is:
org.example.super-xslt.TransformerFactoryImpl
You can, in processors.xml, instanciate a particular instance of the generic XSLT processors, as follows:
<processor name="oxf:super-xslt" uri="oxf/processor/super-xslt">
<instantiation name="oxf:generic-xslt-1.0">
<input name="transformer">
<config>
<class>org.example.super-xslt.TransformerFactoryImpl</class>
</config>
</input>
</instantiation>
</processor>Then you can use super-xslt in your code:
<p:processor uri="oxf/processor/super-xslt">
...
</p:processor>Or, if you are using 2.5 or later:
<p:processor name="oxf:super-xslt">
...
</p:processor>With this mechanism, you are explicitly using the new processor by using its name (previously URI).
If you want to change the XSLT processor everywhere, you could try to change the default processor in processors.xml:
<processor name="oxf:xslt" uri="oxf/processor/xslt">
<instantiation name="oxf:generic-xslt-2.0">
<input name="transformer">
<config>
<class>DEFAULT</class>
</config>
</input>
</instantiation>
</processor>Here "DEFAULT" is recognized internally (and right now (latest CVS), we default to Saxon 9), but you could put another class name here. The risk is that some of the stylesheets in the system won't work anymore if there are some differences of behavior between the old default XSLT transformer and the new one, for example with handling calls to Java code. If it is an upgrade of an existing transformer, then there is less risk. So if you have a lot of code depending on a particular version of an XSLT transformer, your best bet, unless you want to upgrade your XSLT code to the new version, is to explicitly use your new processor name:
<p:processor name="oxf:super-xslt">
...
</p:processor>Let me know if I am on the right track.
-Erik
Matt Allen wrote: > Guys (Erik); > > I know I asked you about this before, but im confused. You said: > > If you do this, you should also modify the class name in > processors.xml (this file is in oxf.jar). Either under the xslt or > xalan processor there, look at the class name (it may be > orbeon.apache.xalan.processor.TransformerFactoryImpl), and try to > replace this with org.apache.xalan.processor.TransformerFactoryImpl. > > I don't quite get it though. Can you explain a bit more (just call > me Mr Stupid :) > > -Matt > > Matt Allen > Client Services Director - 0413 777 771 > River Dynamics > Winner, Outstanding Australian Product Innovation > - 2004 iAwards > Winner, Innovation In Claims Management > - 2003 Australasian Claims Expo
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
_______________________________________________
orbeon-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/orbeon-user
