You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Vi...@trilogy.com on 2002/02/21 09:02:54 UTC

Help Required Urgently: Found something strange in using xalan 2.2.0 / 2.3.0

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)