Steps are as follows:

Run xalan - do a transformation which returns a new DOM object.
Apply xpath with text() on the end to a specific element that contains
text.

These steps will sometimes (but consistently when it does) give me just
part of the text.

If I insert a single call to the Node.normalize() method on the document
element of the document returned by the transformation, I get all the
text.

It appears to be machine specific.  It doesn't do this on my system.
Systems where it does, they have the same JRE, the same endorsed entries
(to make sure the right xerces and xalan entries exist), so I don't
really know what's different, but I do know that the system that
encounter this have less memory and slower processor than my system.

-----Original Message-----
From: Joseph Kesselman [mailto:[EMAIL PROTECTED] 
Sent: Thursday, June 01, 2006 9:03 AM
Cc: xalan-j-users@xml.apache.org
Subject: Re: Issue with text nodes

Question: When you say you're modifying the DOM, do you mean you're
modifying it after running Xalan on it, and then invoking another Xalan
operation on it (eg, patching the DOM from inside an XSLT extension
function, or between calls to the CachedXPathAPI)?

If so... Xalan builds a mapping from the DOM to its internal
representation, and does not know when/how to update that if the DOM is
altered afterward. The result can indeed be that the two models fall out
of
synch.

______________________________________
"... Three things are most perilous: Connectors that corrode,
  Unproven algorithms, and self-modifying code! ..."
  -- "Threes" Rev 1.1 - Duane Elms / Leslie Fish
(http://www.ovff.org/pegasus/songs/threes-rev-11.html)

Reply via email to