Re: xalan usage in taglibs
Jeremy Boynes <[email protected]> Sun, 26 Nov 2017 16:12:01 -0800
| Newsgroups | gmane.comp.jakarta.taglibs.user |
|---|---|
| Message-ID | <[email protected]> |
--Apple-Mail=_2D840F43-B70A-43D8-BEF8-103217C78CEF Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Nov 26, 2017, at 2:17 PM, Matthew Broadhead = <[email protected]> wrote: >=20 > So to run the tests I could reverse the changes of the commit and then = update to javax.xml.* and run tests? >=20 > I am still struggling a bit to understand exactly what is happening = wrt VariableStack and how I can change over to XPathVariableResolver. = And also don't see a way to replace XBoolean, XNumber, XString etc... >=20 > I will keep trying things. Can I come back to you with specific = queries? I did experiment with a pure JAXP based solution - there=E2=80=99s a = patch = <https://bz.apache.org/bugzilla/attachment.cgi?id=3D26445&action=3Ddiff> = attached to #27717 that might be a place to start from. You may need to = roll back a bit to get it to apply.=20 =46rom what I remember, the performance problem stemmed from the = evaluation of XPath inside the loop, with both Xalan and JAXP (which = used a shaded version of Xalan) reinitializing the DTM each time leading = to N * N scaling. The fix was to use Xalan=E2=80=99s API directly to = convert the document=E2=80=99s DOM to a DTM once and then apply the = XPath against the DTM each time leading to 1 * N scaling.=20 The downside is that there was a direct dependency on Xalan 2.7.1. I = think we tried using 2.7.2 but there was some other problem with that I = can=E2=80=99t find at the moment. Given the stability of Xalan/Xerces, = what=E2=80=99s causing the conflict with FOP?= --Apple-Mail=_2D840F43-B70A-43D8-BEF8-103217C78CEF--