I just gave a try to Xalan 2.2D6.
Besides the fact that I have apparently some EOL spitted out to the console
(that do not show up in Xalan 2.0), it crashes after some successful output.
Ths stylesheet makes heavy use of the redirect extension to generate some
javadoc-like report.
If you have any recommendation about the xsl style concerning either style,
speed, memory...i'd be glad to read them. I'd be very curious to know what
are the patterns that are so memory consuming (about 200MB for Xalan 2.0
with an XML file of 3MB)
Works fine with Xalan 2.0 from JAXP 1.1 / xerces 1.4.1 but fails with Xalan
2.2D6
See the XML and XSL attached in zip file.
java -Xms128M -Xmx256M -cp .\lib\xalan.jar org.apache.xalan.xslt.Process -in
small-coverage.xml -xsl coverage-frames.xsl -EDUMP -PARAM output.dir
"coverage"
[...]
javax.xml.transform.TransformerException
at
org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.j
ava:1151)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:
590)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:
1037)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:
1015)
at org.apache.xalan.xslt.Process.main(Process.java:839)
---------
java.util.EmptyStackException
at java.util.Stack.peek(Stack.java:82)
at java.util.Stack.pop(Stack.java:64)
at
org.apache.xalan.transformer.TransformerImpl.popMode(TransformerImpl.java:27
41)
at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.jav
a:231)
at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApp
lyTemplates.java:423)
at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.jav
a:226)
at
org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(Transform
erImpl.java:2096)
at
org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(Transformer
Impl.java:1927)
at
org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.j
ava:1120)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:
590)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:
1037)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:
1015)
at org.apache.xalan.xslt.Process.main(Process.java:839)
--
St�phane Bailliez
Software Engineer, Paris - France
iMediation - http://www.imediation.com
Disclaimer: All the opinions expressed above are mine and not those from my
company.
coverage.zip