[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
[xsl] JAXP - Ignoring whitespaces from a Node object passed as parameter for XSLT transformation
Subject: [xsl] JAXP - Ignoring whitespaces from a Node object passed as parameter for XSLT transformation
From: Blue Gecko <bluegecko@xxxxxxxxx>
Date: Sat, 15 Oct 2005 21:54:31 +0200
|
Hi all,
I'm facing with a problem concerning ignorable whitespace text nodes.
I use an XSLT stylesheet with the <xsl:strip-space elements="*"/>
instruction in order to avoid any redundancy.
I pass a Node object (say: myNode -- see the attached code), obtained
from an XPath evaluation, to the XSLT transformer as a parameter (named
"siteMap"), but the resulting transformation preserves *just* and *only*
the whitespaces coming from *that* parameter nodeset: it seems that the
XSLT parser is unable to deal properly with pre-constructed nodesets.
I want to stress that the rest of the transformed content (from the main
XML source) works perfectly (all whitespaces are stripped as expected).
Is this a standard-compliant behavior?
How can I force XPath resulting Node to ignore redundant whitespace text
nodes?
Thanks in advance!
---------------------
My code snippet:
import javax.xml.transform.*;
import javax.xml.xpath.*;
import org.w3c.dom.*;
import org.xml.sax.*;
{
[snip]
// Define the XPath evaluator!
XPath xPath = XPathFactory.newInstance().newXPath();
// Get the DOM representation of the root node via XPath evaluation!
Node myNode = (Node) xPath.evaluate(
"/rootTag",
new InputSource(sourcePath + "siteMap.xml"),
XPathConstants.NODE
);
[snip]
// Get the page xslt transformer!
Transformer pageTransformer =
TransformerFactory.newInstance().newTransformer(pageStyle);
pageTransformer.setParameter("siteMap", myNode);
[snip]
}
|