|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Xalan giving TransformerException for a defined variab
I'm working with ATG Dynamo application server, attempting to upgrade from a version that used a very old, pre- 1.0 certified XSL parser, "LotusXSL Version 0.18.4, XML4J Version XML4J 2.0.15 ", to a version that uses Xalan, "Xalan Version Xalan Java 2.4.1". A stylesheet that worked with the Lotus parser blows up when processed by Xalan, a NullPointerException when dealing with a param variable. Has anyone seen this problem before, or is this in some way illegal XSL the old parser allowed? i'm attaching the stylesheet reduced down to the basics that still blows up. if one removes the "$shippedOrder" variable in the <xsl:sort> element, then the Xalan processor will not blow up. also attaching the stacktrace. Thanks for any help
<xsl:output method="xml" indent="yes"/> <xsl:template match="ORDER_STATUS_DOCUMENT"> <xsl:element name="Shipments"> <xsl:apply-templates select="ORDER[ORDER_DETAIL/ITEM_STATUS/SHIP]"/> </xsl:element> </xsl:template> <xsl:template match="ORDER"> <xsl:element name="Shipment"> <xsl:call-template name="generate_containers"> <xsl:with-param name="shippedOrder" select="."/> </xsl:call-template> </xsl:element> </xsl:template> <!-- key to generate a node-set of shipment elements that have a common tracking number, hence should be in the same Container --> <xsl:key name="container-group" match="//PACKAGE" use="TRACKING_NUMBER"/> <!-- called from the /ORDER_STATUS_DOCUMENT/ORDER level --> <xsl:template name="generate_containers"> <xsl:param name="shippedOrder"/> <xsl:variable name="listoftrackingnumbers"> <xsl:for-each select=".//PACKAGE[generate-id(.) = generate-id(key('container-group', TRACKING_NUMBER)[1])]"> <xsl:sort select="count($shippedOrder/ORDER_DETAIL[.//PACKAGE/TRACKING_NUMBER = current()/TRACKING_NUMBER])" order="ascending" data-type="number"/> <xsl:value-of select="concat(TRACKING_NUMBER, '~')"/> </xsl:for-each> </xsl:variable> </xsl:template> </xsl:stylesheet> ------------- END of The XSL stylesheet ----------------- ------------- The EDUMP stacktrace ----------------- javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: java.lang.NullPointerException at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:1002) at org.apache.xalan.xslt.Process.main(Process.java:769) Caused by: javax.xml.transform.TransformerException: java.lang.NullPointerException at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:996) ... 1 more Caused by: java.lang.NullPointerException at org.apache.xpath.operations.Variable.getElemVariable(Variable.java:321) at org.apache.xpath.operations.Variable.getAnalysisBits(Variable.java:380) at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits(FilterExprWalker.java:307) at org.apache.xpath.axes.WalkingIterator.getAnalysisBits(WalkingIterator.java:76) at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables(WalkingIteratorSorted.java:238) at org.apache.xpath.functions.FunctionOneArg.fixupVariables(FunctionOneArg.java:158) at org.apache.xpath.XPath.fixupVariables(XPath.java:114) at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:384) at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:173) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:356) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.recompose(StylesheetRoot.java:336) at org.apache.xalan.processor.StylesheetHandler.endDocument(StylesheetHandler.java:511) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:715) at org.apache.xerces.impl.XMLNamespaceBinder.endDocument(XMLNamespaceBinder.java:704) at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(XMLDTDValidator.java:985) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:437) at org.apache.xerces.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1159) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityManager.java:3206) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(XMLEntityManager.java:2878) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(XMLDocumentScannerImpl.java:987) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:529) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:585) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:147) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1148) at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:972) ... 1 more --------- javax.xml.transform.TransformerException: java.lang.NullPointerException at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:996) at org.apache.xalan.xslt.Process.main(Process.java:769) Caused by: java.lang.NullPointerException at org.apache.xpath.operations.Variable.getElemVariable(Variable.java:321) at org.apache.xpath.operations.Variable.getAnalysisBits(Variable.java:380) at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits(FilterExprWalker.java:307) at org.apache.xpath.axes.WalkingIterator.getAnalysisBits(WalkingIterator.java:76) at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables(WalkingIteratorSorted.java:238) at org.apache.xpath.functions.FunctionOneArg.fixupVariables(FunctionOneArg.java:158) at org.apache.xpath.XPath.fixupVariables(XPath.java:114) at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:384) at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:173) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:356) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.recompose(StylesheetRoot.java:336) at org.apache.xalan.processor.StylesheetHandler.endDocument(StylesheetHandler.java:511) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:715) at org.apache.xerces.impl.XMLNamespaceBinder.endDocument(XMLNamespaceBinder.java:704) at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(XMLDTDValidator.java:985) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:437) at org.apache.xerces.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1159) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityManager.java:3206) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(XMLEntityManager.java:2878) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(XMLDocumentScannerImpl.java:987) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:529) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:585) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:147) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1148) at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:972) ... 1 more --------- java.lang.NullPointerException at org.apache.xpath.operations.Variable.getElemVariable(Variable.java:321) at org.apache.xpath.operations.Variable.getAnalysisBits(Variable.java:380) at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits(FilterExprWalker.java:307) at org.apache.xpath.axes.WalkingIterator.getAnalysisBits(WalkingIterator.java:76) at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables(WalkingIteratorSorted.java:238) at org.apache.xpath.functions.FunctionOneArg.fixupVariables(FunctionOneArg.java:158) at org.apache.xpath.XPath.fixupVariables(XPath.java:114) at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:384) at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:173) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:356) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.recompose(StylesheetRoot.java:336) at org.apache.xalan.processor.StylesheetHandler.endDocument(StylesheetHandler.java:511) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:715) at org.apache.xerces.impl.XMLNamespaceBinder.endDocument(XMLNamespaceBinder.java:704) at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(XMLDTDValidator.java:985) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:437) at org.apache.xerces.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1159) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityManager.java:3206) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(XMLEntityManager.java:2878) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(XMLDocumentScannerImpl.java:987) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:529) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:585) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:147) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1148) at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:972) at org.apache.xalan.xslt.Process.main(Process.java:769) --------- java.lang.NullPointerException at org.apache.xpath.operations.Variable.getElemVariable(Variable.java:321) at org.apache.xpath.operations.Variable.getAnalysisBits(Variable.java:380) at org.apache.xpath.axes.FilterExprWalker.getAnalysisBits(FilterExprWalker.java:307) at org.apache.xpath.axes.WalkingIterator.getAnalysisBits(WalkingIterator.java:76) at org.apache.xpath.axes.WalkingIteratorSorted.fixupVariables(WalkingIteratorSorted.java:238) at org.apache.xpath.functions.FunctionOneArg.fixupVariables(FunctionOneArg.java:158) at org.apache.xpath.XPath.fixupVariables(XPath.java:114) at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:384) at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:173) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:356) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:361) at org.apache.xalan.templates.StylesheetRoot.recompose(StylesheetRoot.java:336) at org.apache.xalan.processor.StylesheetHandler.endDocument(StylesheetHandler.java:511) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:715) at org.apache.xerces.impl.XMLNamespaceBinder.endDocument(XMLNamespaceBinder.java:704) at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(XMLDTDValidator.java:985) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:437) at org.apache.xerces.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1159) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityManager.java:3206) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(XMLEntityManager.java:2878) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(XMLDocumentScannerImpl.java:987) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:529) at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:585) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:147) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1148) at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:972) at org.apache.xalan.xslt.Process.main(Process.java:769) ------------- END of The EDUMP stacktrace -----------------
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






