Uploaded image for project: 'XalanJ2'
  1. XalanJ2
  2. XALANJ-1706

[PATCH] DocumentFragment returned by extension element causes multiple SAX endDocument() events

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.7
    • 2.7.1
    • Other
    • None
    • Operating System: All
      Platform: All
    • 24220

    Description

      At Krysalis Barcode (http://www.krysalis.org/barcode) I have a Xalan extension
      which creates barcodes in SVG format [1]. Until recently I've used an
      extension function for that. As I was able to create an extension element for
      SAXON I wanted to do the same for the Xalan-extension. But here's the problem:

      The extension element (like the extension function where it works correctly)
      returns a DocumentFragment containing the generated barcode in SVG format. In
      the case of the extension element the DocumentFragment is processed by a
      TreeWalker which issues start/endDocument() SAX events although it shouldn't
      IMO. This behaviour causes Apache FOP to crash with an NPE because more than
      one endDocument() SAX event is sent to FOP by Xalan.

      I will attach a test case for the bugzilla test directory. Current CVS (HEAD)
      and 2.5.1 fail in this test. I will try to find a bugfix but if someone more
      intimate with the code beats me to it, so much better.

      [1] http://cvs.sourceforge.net/viewcvs.py/krysalis/krysalis-
      barcode/src/java/org/krysalis/barcode/xalan/BarcodeExt.java

      Attachments

        1. ASF.LICENSE.NOT.GRANTED--BugzillaExtElemSAXendDocumentCheck.zip
          4 kB
          Jeremias Maerki
        2. ASF.LICENSE.NOT.GRANTED--endDocumentPatch.diff
          2 kB
          Jeremias Maerki
        3. BugzillaExtElemSAXendDocumentCheck.zip
          4 kB
          Jeremias Maerki
        4. XALANJ-1706-patch.diff
          2 kB
          Jeremias Maerki

        Activity

          People

            minchau@ca.ibm.com Brian Minchau
            jeremias@apache.org Jeremias Maerki
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: