[ 
http://issues.apache.org/jira/browse/XALANJ-2301?page=comments#action_12420674 
] 

Brian Minchau commented on XALANJ-2301:
---------------------------------------

Peter has suggested a fix in ElemForEach, however the traceback above shows a 
problem with ElemApplyTemplates, so it looks like there are a few places that 
need the same fix, so the fix is not complete.

John Gentilin remembers that in a previous bug triage that we would use the the 
ElemForEach code for ElemApplyTemplates.

A work around is to move the namespace declaration up to the parent element of 
the sort element.

> NPE in ElemTemplateElement for a ElemSort as part of an ElemForEach when 
> dynamically generating a Templates
> -----------------------------------------------------------------------------------------------------------
>
>          Key: XALANJ-2301
>          URL: http://issues.apache.org/jira/browse/XALANJ-2301
>      Project: XalanJ2
>         Type: Bug

>     Versions: 2.7
>     Reporter: peter royal
>  Attachments: j2301.out, j2301.xml, j2301.xsl
>
> The XSL fragment that created this is:
> <xsl:apply-templates select="something>
>     <xsl:sort select="@something"/>
> </xsl:apply-templates>
> resulting in:
> java.lang.NullPointerException
>       at 
> org.apache.xalan.templates.ElemTemplateElement.getStylesheetRoot(ElemTemplateElement.java:171)
>       at 
> org.apache.xalan.templates.ElemTemplateElement.resolvePrefixTables(ElemTemplateElement.java:1033)
>       at 
> org.apache.xalan.templates.ElemTemplateElement.compose(ElemTemplateElement.java:190)
>       at org.apache.xalan.templates.ElemSort.compose(ElemSort.java:333)
>       at org.apache.xalan.templates.ElemForEach.compose(ElemForEach.java:136)
>       at 
> org.apache.xalan.templates.ElemCallTemplate.compose(ElemCallTemplate.java:113)
>       at 
> org.apache.xalan.templates.ElemApplyTemplates.compose(ElemApplyTemplates.java:127)
>       at 
> org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:357)
>       at 
> org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:362)
>       at 
> org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:362)
>       at 
> org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:362)
>       at 
> org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:362)
>       at 
> org.apache.xalan.templates.StylesheetRoot.composeTemplates(StylesheetRoot.java:362)
>       at 
> org.apache.xalan.templates.StylesheetRoot.recompose(StylesheetRoot.java:337)
>       at 
> org.apache.xalan.processor.StylesheetHandler.endDocument(StylesheetHandler.java:468)
>          ... then enters my code
> ... this occurs because the ElemSort has a single entry in its 
> m_declaredPrefixes vector, an entry for 'xsl'.
> A 1-line fix to ElemForEach.java fixes this. In appendChild, when adding a 
> sort element, just add:
> newChild.setParentElem( this );
> before returning the newChild.

-- 
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]

Reply via email to