I was checking the latest version of Xalan with my extension
element code and I ran across this bug, fairly sure it's not
mine but I though I would ask first.

In my extension element, I call executeChildTemplates and
if one of the Child Templates has an Extension Element, the
call fails with an NPE.

I have traced the bug to the following thread

ElemExtensionCall#execute, when it tries to flushPending()
  from the Result Tree Handler.

ToSaxHandler#flushPending, m_needToCallStartDocument
is true, and a call to startDocumentInternal is made.

ToSaxHandler#startDocumentInternal, m_saxHandler is null
so the call to startDocument fails with an NPE.


Below is the code I call after the execution of all my Extension Elements since I support nested extension elements.

This is working fine with 2.5.2

Regards
John G

// Code derived from Redirect Extension
private void executeChildTemplates(
  XSLProcessorContext context, ElemExtensionCall elem )
    throws TransformerException
{
  TransformerImpl transf = context.getTransformer();
  transf.executeChildTemplates(elem,
        context.getContextNode(),
        context.getMode(), transf.getContentHandler());
}


-- -------------------------------------- John Gentilin Eye Catching Solutions Inc. 18314 Carlwyn Drive Castro Valley CA 94546

    Contact Info
[EMAIL PROTECTED]
Ca Office 1-510-881-4821
NJ Office 1-732-422-4917




Reply via email to