Hi !
We at Trilogy, use xalan for xslt purpose. When i started migrating from xalan 2.2.D13 (xerces 1.4.4) to 2.2.0 / 2.3.0, I ran into a problem. We have an xml and an xsl and the code generates 65 html files using the xml/xsl. The generation works perfectly fine with the 2.2.D13 but when i used 2.2.0 it generated 6 files correctly and the seventh file threw and exception in XRTreeFrag.xstr(). When i used 2.3.0 it generated around 10 files and then threw the similar exception (trace shown below). When i changed the following lines
if(null == m_xmlStr)
m_xmlStr = m_dtm.getStringValue(m_dtmRoot);
in xstr()
to
if(m_xmlStr == null)
if (m_dtm != null)
m_xmlStr = m_dtm.getStringValue(m_dtmRoot);
else
m_xmlStr = new XString("");
in 2.2.0 the generation of all the 65 files was perfect. Basically the m_dtm was null at that point. Please let me know if there is some syntax problem in the xsl file which was ignored/taken-care-of in 2.2.D13 but does need to be correct from 2.2.0 onwards ? or is this really some kind of bug in the code ? Can you point out directly as what in xsl could be wrong ? Is it an xpath issue (some xpath not following the norms?)
This is really critical to our development and we have a release soon. We would appreciate if you could get back to us asap. The xsl file is really huge (5000 lines) and due to copyright issues I cannot send it to you.
Thanks,
Vineet Rao
Developer, Trilogy Software
Following is the trace:-
javax.xml.transform.TransformerException: java.lang.NullPointerException
at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1230)
at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:642)
at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1092)
at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1070)
at com.trilogy.awc.xslt.AWC2HTML.transformTab(AWC2HTML.java:146)
at com.trilogy.awc.xslt.AWC2HTML.transformRecursive(AWC2HTML.java:68)
at com.trilogy.awc.xslt.AWC2HTML.transformRecursive(AWC2HTML.java:70)
at com.trilogy.awc.xslt.AWC2HTML.transformRecursive(AWC2HTML.java:70)
at com.trilogy.awc.xslt.AWC2HTML.transform(AWC2HTML.java:274)
at com.trilogy.awc.xslt.Localize.localizeAll(Localize.java:531)
at com.trilogy.awc.xslt.Localize.main(Localize.java:589)
---------
java.lang.NullPointerException
at org.apache.xpath.objects.XRTreeFrag.xstr(XRTreeFrag.java:255)
at org.apache.xpath.objects.XNodeSet.compare(XNodeSet.java:588)
at org.apache.xpath.objects.XNodeSet.equals(XNodeSet.java:706)
at org.apache.xpath.operations.Equals.operate(Equals.java:82)
at org.apache.xpath.operations.Operation.execute(Operation.java:146)
at org.apache.xpath.axes.PredicatedNodeTest.executePredicates(PredicatedNodeTest.java:313)
at org.apache.xpath.axes.PredicatedNodeTest.acceptNode(PredicatedNodeTest.java:444)
at org.apache.xpath.axes.DescendantIterator.nextNode(DescendantIterator.java:282)
at org.apache.xalan.templates.ElemForEach.transformSelectedNodes(ElemForEach.java:412)
at org.apache.xalan.templates.ElemForEach.execute(ElemForEach.java:299)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.transformer.TransformerImpl.transformToRTF(TransformerImpl.java:1729)
at org.apache.xalan.templates.ElemVariable.getValue(ElemVariable.java:327)
at org.apache.xalan.templates.ElemVariable.execute(ElemVariable.java:282)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:430)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:279)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemElement.constructNode(ElemElement.java:414)
at org.apache.xalan.templates.ElemElement.execute(ElemElement.java:363)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:710)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:710)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:200)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:430)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:279)
at org.apache.xalan.templates.ElemForEach.transformSelectedNodes(ElemForEach.java:438)
at org.apache.xalan.templates.ElemForEach.execute(ElemForEach.java:299)
at org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:420)
at org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:226)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemElement.constructNode(ElemElement.java:414)
at org.apache.xalan.templates.ElemElement.execute(ElemElement.java:363)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:710)
at org.apache.xalan.templates.ElemForEach.transformSelectedNodes(ElemForEach.java:438)
at org.apache.xalan.templates.ElemForEach.execute(ElemForEach.java:299)
at org.apache.xalan.templates.ElemForEach.transformSelectedNodes(ElemForEach.java:438)
at org.apache.xalan.templates.ElemForEach.execute(ElemForEach.java:299)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2186)
at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2012)
at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1175)
at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:642)
at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1092)
at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1070)
at com.trilogy.awc.xslt.AWC2HTML.transformTab(AWC2HTML.java:146)
at com.trilogy.awc.xslt.AWC2HTML.transformRecursive(AWC2HTML.java:68)
at com.trilogy.awc.xslt.AWC2HTML.transformRecursive(AWC2HTML.java:70)
at com.trilogy.awc.xslt.AWC2HTML.transformRecursive(AWC2HTML.java:70)
at com.trilogy.awc.xslt.AWC2HTML.transform(AWC2HTML.java:274)
at com.trilogy.awc.xslt.Localize.localizeAll(Localize.java:531)
at com.trilogy.awc.xslt.Localize.main(Localize.java:589)
- Re: Help Required Urgently: Found something strange in us... Vineet . Rao
- Re: Help Required Urgently: Found something strange ... scott_boag
- Re: Help Required Urgently: Found something strange ... Joseph Kesselman
