Schwartz, Rechell R, ALABS wrote:
I am using Trax to transform my xml files, and am finding the performance
very slow especially for large files. Are there any ways of optimizing the
performance such as by pre-compiling the stylesheets?
Yes, but your time is probably wasted elsewhere.
> transformer = tFactory.newTransformer(new
StreamSource(getClass().getResourceAsStream(xsl)));
> transformer.transform(new DOMSource(document), new StreamResult(out));
^^^^^^^^^^^^^^^^
Use a profiler to check where your program wastes time:
- DB access or whereever you get your raw data
- DOM construction
- transformation
If it is the latter, check your XSL for inefficient constructs.
If it is DOM construction, use SAX. Also DOM uses a lot of memory,
which may be a problem in itself (more GC).
J.Pietschmann
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list