XSLT debugger using libsaxon, which only supports XSLT1.0
I expected the XSLT debugger to support XSLT 2 and XPath 2, but it's actually using com.icl.saxon, something entirely different from Saxon 9.
As such, I can't debug XSLT 2 and XPath 2.
XSLT Runner does use Saxon 9, somehow.
Please sign in to leave a comment.
Hi,
the XSLT debugger that is bundled with IDEA 11 & IDEA 12 does support XSLT 2.0: When a stylesheet that specifies version="2.0" is being debugged, the plugin automatically chooses the Saxon 9-HE implementation that is also bundled with IDEA.
However, for simple running XSLT 2.0, you need to have the XSLT processor that is to be used in the classpath that is selected in the "Advanced" tab of the run configuration's properties.
HTH,
Sascha
No, this is not the case.
The stylesheet specifies version 2.0. On launching the debugger, without specifying any vm arguments, IntelliJ includes this system property on its own: -Dxslt.transformer.type=xalan
If I instead set it to -Dxslt.transformer.type=SAXON, it uses com.icl.saxon, which only supports XSLT 1. I verified that no vm arguments are included in the default XSLT configuration.
Mac OS X, 12.0.2 IU-123.123
Xalan is used automatically if a compatible version is found in the module's classpath. Please select a plain JDK in the Advanced tab under "Classpath and JDK".
In case of an XSLT 2.0 stylesheet this should not happen and will be fixed.
You can also specify "saxon9" as transfomer type which will select the correct XSLT processor.
@sascha
Could you please make it clearer how to enable xslt v2 in xslt debugger? I have spent a lot of time but no success :(
Idea 2018.2.4
I added jre/lib/ext into java 1.8 sdk saxon9he.jar
JDK 8 classpath - loaded this jar in idea configuration
plugin "Classpath and JDK " Usej JDK 1.8
VM arguments:
-Dxslt.transformer.type=saxon
DEBUG
This is always 1
And later errors
Thank you!
I changed
-Dxslt.transformer.type=saxon
to
-Dxslt.transformer.type=saxon9
and xslt 2.0 is working.
How may I pass typed parameter in this plugin? e.g. false, false(), xs:boolean('false'), xs:boolean(false) - not working
net.sf.saxon.trans.XPathException: Required type is xs:boolean; supplied value has type xs:string
This is so powerful plugin - shame that there is no basic documentation.
Thank you