[ http://issues.apache.org/jira/browse/XALANJ-2038?page=all ]
Brian Minchau updated XALANJ-2038: ---------------------------------- Fix Version: 2.7 > Java Null pointer exception thrown in XSLTransform > -------------------------------------------------- > > Key: XALANJ-2038 > URL: http://issues.apache.org/jira/browse/XALANJ-2038 > Project: XalanJ2 > Type: Bug > Components: Xalan > Versions: 2.6 > Environment: P 4.0 Windows XP pro > Reporter: Win > Fix For: 2.7 > > When using an XSLTransformer class to transform xml data, NullPointEXception > is thrown for xsl for the following data and xsl files. The test can be run > as: > \j2sdk1.4.2_05\bin\java.exe -classpath > .;.\lib\xml-apis.jar;.\lib\xercesImpl.jar;.\lib\xalan.jar > org.apache.xalan.xslt.Process -in data.xml -xsl transform.xsl -out a1.html > (It will through a null pointer exception when called from the java api > XSLTransfomer.transform as well). These same file will transform correctly > with other tools such as XMLSpy or Microsoft's > Here are the data.xml and transform.xsl files: > data.xml:: > ========== > <?xml version="1.0" encoding="UTF-8"?> > <processErrors reportDate="2005/01/10" reportTime="11:36:10" > partnerName="TechData" lifecycleInstanceName="Lifecycle 2925870" > lifecycleDefinitionName="850POTo856ShipNotice"> > <processError lifecycleexceptionid="6e04b6142d0375d70a80759722d891dca1fc64e0" > errorDate="2004/09/01" errorTime="05:54:00" errorLevel="document" new="1" > documentName="Purchase Order (850)" > standardName="X12" specificationName="PO850"><error type="Timing Rule > Failure" description="Process 'Lifecycle 2925870', document type '850': > '0001', TimingRule 'complete coverage of 850 by 856 (part number) within 24 > hours': Start Date/Time was null" /> > <error type="Complete Coverage Unmatched Value" description="Process > 'Lifecycle 2925870', document type '850': '0001', CompleteCoverageRule > '850POTo856ShipNoticeCC2-PR': The '850' had values '[00001, 00002]', that > were never matched by any observed, related documents." /> > </processError> > </processErrors> > transform.xsl:: > =============== > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > version="1.0"> > <xsl:output method="html"/> > <!-- summary --> > <xsl:template name="reportSummary"> > <xsl:param name="processErrors"/> > <table border="0" cellpadding="3" cellspacing="0" width="670"> > <tr> > <td colspan="2" style="background-color: #02669a; > font-family:verdana, sans-serif; font-size: 11px; font-weight: bold; color: > #ffffff; border:#999999 1px solid;">Process Error Summary</td> > </tr> > <tr> > <td width="35%" style="background-color: #bcd3e9; > font-family:verdana, sans-serif; font-size: 10px; color: #000000; > border-left:#999999 1px solid; border-bottom:#999999 1px > solid;">Date/Time</td> > <td width="65%" style="font-family:verdana, sans-serif; > font-size: 10px; color: #000000; border-left:#999999 1px solid; > border-right:#999999 1px solid;border-bottom:#999999 1px solid;"> > <xsl:value-of > select="$processErrors/@reportDate"/> > <xsl:text> </xsl:text> > <xsl:value-of > select="$processErrors/@reportTime"/> > <xsl:text> CST</xsl:text> > </td> > </tr> > <tr> > <td width="35%" style="background-color: #bcd3e9; > font-family:verdana, sans-serif; font-size: 10px; color: #000000; > border-left:#999999 1px solid; border-bottom:#999999 1px solid;">Total > Errors</td> > <td width="65%" > style="font-family:verdana, sans-serif; font-size: 10px; color: #000000; > border-left:#999999 1px solid; border-right:#999999 1px > solid;border-bottom:#999999 1px solid;"> > <!--xsl:value-of > select="count($processErrors/processError/@new)"/--> > <xsl:value-of > select="count($processErrors/processError/@new)"/> > </td> > </tr> > </table> > </xsl:template> > <!-- /summary --> > <!-- main testReport.xsl --> > <xsl:template match="*"> > <table border="0" cellspacing="0" cellpadding="0" > width="100%"> > <tr> > <td> > <table border="0" cellpadding="10" > cellspacing="0" width="100%"> > <tr> > <td valign="top"> > <div id="ProcessSummaryReport"> > <a id="reportTop" name="reportTop"></a> > <xsl:call-template name="reportSummary"> > <xsl:with-param name="processErrors" > select="//processErrors" /> > </xsl:call-template> > </div> > <br/> > </td> > </tr> > </table> > </td> > </tr> > </table> > </xsl:template> > </xsl:stylesheet> -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]