DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24894>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24894

NullPointerException with document() in a global xsl:variable 

           Summary: NullPointerException with document() in a global
                    xsl:variable
           Product: XalanJ2
           Version: 2.5
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: org.apache.xpath
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


I am referring an external document using:

<xsl:variable name="externaldoc" select="document('external.xml')"/>

When I use this inside my transformation as $externaldoc I get a null pointer 
exception. Moving the xsl:variable declaration from global to inside the 
xsl:template did not help. Changing the critical occurance of "$externaldoc" 
in the criticial xpath expression to a direct call to "document
('external.xml')" stops the error. Therefore I suspect it is the reuse of the 
document element that is causing this problem. Interestingly I use this method 
in many other places in the same application without this problem. Here I am 
only counting elements in $externaldoc to obtain some statistics....

<checkEnvironmentExtension>
<EnvironmentCheck version="$Revision: 1.23 $">
<environment>
<item key="version.DOM.draftlevel">2.0fd</item>
<item key="java.class.path">.</item>
<item key="version.JAXP">1.1 or higher</item>
<item key="java.ext.dirs">C:\Program Files\Java\j2re1.4.2_02\lib\ext</item>
<foundJar desc="path" name="xalan.jar">C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xalan.jar</foundJar>
<foundJar desc="apparent.version" name="xercesImpl.jar">xercesImpl.jar 
WARNING.present-unknown-version</foundJar>
<foundJar desc="path" name="xercesImpl.jar">C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xercesImpl.jar</foundJar>
<foundJar desc="apis.jar-apparent.version" name="xml">xml-apis.jar present-
unknown-version</foundJar>
<foundJar desc="apis.jar-path" name="xml">C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xml-apis.jar</foundJar>
<item key="version.xerces2">Xerces-J 2.6.0</item>
<item key="version.xerces1">not-present</item>
<item key="version.xalan2_2">Xalan Java 2.5.2</item>
<item key="version.xalan1">not-present</item>
<item key="version.ant">not-present</item>
<item key="java.version">1.4.2_02</item>
<item key="version.DOM">2.0</item>
<item key="version.crimson">present-unknown-version</item>
<item key="sun.boot.class.path">C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xalan.jar;C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xercesImpl.jar;C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xml-apis.jar;C:\Program Files\Java\j2re1.4.2_02
\lib\endorsed\xmlParserAPIs.jar;C:\Program Files\Java\j2re1.4.2_02
\lib\rt.jar;C:\Program Files\Java\j2re1.4.2_02\lib\i18n.jar;C:\Program 
Files\Java\j2re1.4.2_02\lib\sunrsasign.jar;C:\Program Files\Java\j2re1.4.2_02
\lib\jsse.jar;C:\Program Files\Java\j2re1.4.2_02\lib\jce.jar;C:\Program 
Files\Java\j2re1.4.2_02\lib\charsets.jar;C:\Program Files\Java\j2re1.4.2_02
\classes</item>
<item key="version.SAX">2.0</item>
<item key="version.xalan2x">Xalan Java 2.5.2</item>
</environment>
<status result="OK"/>
</EnvironmentCheck>
</checkEnvironmentExtension>


The full stack trace is:

javax.xml.transform.TransformerConfigurationException: 
javax.xml.transform.TransformerException: java.lang.NullPointerException
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:861)
        at org.apache.xalan.xslt.Process.main(Process.java:760)
Caused by: javax.xml.transform.TransformerException: 
java.lang.NullPointerException
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:855)
        ... 1 more
Caused by: java.lang.NullPointerException
        at org.apache.xpath.operations.Variable.getElemVariable
(Variable.java:312)
        at org.apache.xpath.operations.Variable.getAnalysisBits
(Variable.java:362)
        at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits
(FilterExprWalker.java:305)
        at org.apache.xpath.axes.WalkingIterator.getAnalysisBits
(WalkingIterator.java:129)
        at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables
(WalkingIteratorSorted.java:235)
        at org.apache.xpath.functions.FunctionOneArg.fixupVariables
(FunctionOneArg.java:156)
        at org.apache.xpath.XPath.fixupVariables(XPath.java:111)
        at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:382)
        at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:157)
        at org.apache.xalan.templates.ElemCallTemplate.compose
(ElemCallTemplate.java:150)
        at org.apache.xalan.templates.ElemApplyTemplates.compose
(ElemApplyTemplates.java:164)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:358)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.recompose
(StylesheetRoot.java:338)
        at org.apache.xalan.processor.StylesheetHandler.endDocument
(StylesheetHandler.java:481)
        at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown 
Source)
        at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown 
Source)
        at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)
        at 
org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch
(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:831)
        ... 1 more
---------
javax.xml.transform.TransformerException: java.lang.NullPointerException
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:855)
        at org.apache.xalan.xslt.Process.main(Process.java:760)
Caused by: java.lang.NullPointerException
        at org.apache.xpath.operations.Variable.getElemVariable
(Variable.java:312)
        at org.apache.xpath.operations.Variable.getAnalysisBits
(Variable.java:362)
        at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits
(FilterExprWalker.java:305)
        at org.apache.xpath.axes.WalkingIterator.getAnalysisBits
(WalkingIterator.java:129)
        at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables
(WalkingIteratorSorted.java:235)
        at org.apache.xpath.functions.FunctionOneArg.fixupVariables
(FunctionOneArg.java:156)
        at org.apache.xpath.XPath.fixupVariables(XPath.java:111)
        at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:382)
        at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:157)
        at org.apache.xalan.templates.ElemCallTemplate.compose
(ElemCallTemplate.java:150)
        at org.apache.xalan.templates.ElemApplyTemplates.compose
(ElemApplyTemplates.java:164)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:358)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.recompose
(StylesheetRoot.java:338)
        at org.apache.xalan.processor.StylesheetHandler.endDocument
(StylesheetHandler.java:481)
        at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown 
Source)
        at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown 
Source)
        at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)
        at 
org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch
(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:831)
        ... 1 more
---------
java.lang.NullPointerException
        at org.apache.xpath.operations.Variable.getElemVariable
(Variable.java:312)
        at org.apache.xpath.operations.Variable.getAnalysisBits
(Variable.java:362)
        at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits
(FilterExprWalker.java:305)
        at org.apache.xpath.axes.WalkingIterator.getAnalysisBits
(WalkingIterator.java:129)
        at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables
(WalkingIteratorSorted.java:235)
        at org.apache.xpath.functions.FunctionOneArg.fixupVariables
(FunctionOneArg.java:156)
        at org.apache.xpath.XPath.fixupVariables(XPath.java:111)
        at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:382)
        at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:157)
        at org.apache.xalan.templates.ElemCallTemplate.compose
(ElemCallTemplate.java:150)
        at org.apache.xalan.templates.ElemApplyTemplates.compose
(ElemApplyTemplates.java:164)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:358)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.recompose
(StylesheetRoot.java:338)
        at org.apache.xalan.processor.StylesheetHandler.endDocument
(StylesheetHandler.java:481)
        at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown 
Source)
        at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown 
Source)
        at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)
        at 
org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch
(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:831)
        at org.apache.xalan.xslt.Process.main(Process.java:760)
---------
java.lang.NullPointerException
        at org.apache.xpath.operations.Variable.getElemVariable
(Variable.java:312)
        at org.apache.xpath.operations.Variable.getAnalysisBits
(Variable.java:362)
        at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits
(FilterExprWalker.java:305)
        at org.apache.xpath.axes.WalkingIterator.getAnalysisBits
(WalkingIterator.java:129)
        at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables
(WalkingIteratorSorted.java:235)
        at org.apache.xpath.functions.FunctionOneArg.fixupVariables
(FunctionOneArg.java:156)
        at org.apache.xpath.XPath.fixupVariables(XPath.java:111)
        at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:382)
        at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:157)
        at org.apache.xalan.templates.ElemCallTemplate.compose
(ElemCallTemplate.java:150)
        at org.apache.xalan.templates.ElemApplyTemplates.compose
(ElemApplyTemplates.java:164)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:358)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.composeTemplates
(StylesheetRoot.java:363)
        at org.apache.xalan.templates.StylesheetRoot.recompose
(StylesheetRoot.java:338)
        at org.apache.xalan.processor.StylesheetHandler.endDocument
(StylesheetHandler.java:481)
        at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown 
Source)
        at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown 
Source)
        at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)
        at 
org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch
(Unknown Source)
        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFactoryImpl.java:831)
        at org.apache.xalan.xslt.Process.main(Process.java:760)

Reply via email to