Uploaded image for project: 'FOP'
  1. FOP
  2. FOP-1221

Use of border-separation in fo:table causes NullPointerException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Resolution: Duplicate
    • 0.92
    • None
    • unqualified
    • None
    • Operating System: Windows 2000
      Platform: PC
    • 40186

    Description

      Found while running legacy FO through FOP 0.92b that worked under 0.20.

      The following FO successfully generates PDF:

      <fo:root xmlns:fn="http://www.w3.org/2005/xpath-functions"
      xmlns:fo="http://www.w3.org/1999/XSL/Format"
      xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
      xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <fo:layout-master-set xmlns:fn="http://www.w3.org/2005/xpath-functions"
      xmlns:fo="http://www.w3.org/1999/XSL/Format"
      xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
      xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <fo:simple-page-master master-name="default-page" page-
      height="11in" page-width="8.5in" margin-left="0.6in" margin-right="0.6in">
      <fo:region-body margin-top="0.79in" margin-
      bottom="0.79in"/>
      </fo:simple-page-master>
      </fo:layout-master-set>
      <fo:page-sequence master-reference="default-page" initial-page-
      number="1" format="1">
      <fo:flow flow-name="xsl-region-body">
      <fo:block>
      <fo:table width="7.27916in" space-
      before.optimum="1pt" space-after.optimum="2pt" border-top-style="solid" border-
      top-color="#ECE9D8" border-top-width="0.01042in" border-bottom-style="solid"
      border-bottom-color="#ACA899" border-bottom-width="0.01042in" border-left-
      style="solid" border-left-color="#ECE9D8" border-left-width="0.01042in" border-
      right-style="solid" border-right-color="#ACA899" border-right-width="0.01042in"
      border-collapse="separate" color="black" display-align="center">
      <fo:table-column column-
      width="7.23749in"/>
      <fo:table-body>
      <fo:table-row>
      <fo:table-cell>
      <fo:block
      padding-top="1pt" padding-bottom="1pt">

      <fo:inline>Any old text.</fo:inline>
      </fo:block>
      </fo:table-cell>
      </fo:table-row>
      </fo:table-body>
      </fo:table>
      <fo:block>
      <fo:leader leader-pattern="space"/>
      </fo:block>
      </fo:block>
      </fo:flow>
      </fo:page-sequence>
      </fo:root>

      But the following causes exception:

      <fo:root xmlns:fn="http://www.w3.org/2005/xpath-functions"
      xmlns:fo="http://www.w3.org/1999/XSL/Format"
      xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
      xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <fo:layout-master-set xmlns:fn="http://www.w3.org/2005/xpath-functions"
      xmlns:fo="http://www.w3.org/1999/XSL/Format"
      xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
      xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <fo:simple-page-master master-name="default-page" page-
      height="11in" page-width="8.5in" margin-left="0.6in" margin-right="0.6in">
      <fo:region-body margin-top="0.79in" margin-
      bottom="0.79in"/>
      </fo:simple-page-master>
      </fo:layout-master-set>
      <fo:page-sequence master-reference="default-page" initial-page-
      number="1" format="1">
      <fo:flow flow-name="xsl-region-body">
      <fo:block>
      <fo:table width="7.27916in" space-
      before.optimum="1pt" space-after.optimum="2pt" border-top-style="solid" border-
      top-color="#ECE9D8" border-top-width="0.01042in" border-bottom-style="solid"
      border-bottom-color="#ACA899" border-bottom-width="0.01042in" border-left-
      style="solid" border-left-color="#ECE9D8" border-left-width="0.01042in" border-
      right-style="solid" border-right-color="#ACA899" border-right-width="0.01042in"
      border-collapse="separate" border-separation="1pt" color="black" display-
      align="center">
      <fo:table-column column-
      width="7.23749in"/>
      <fo:table-body>
      <fo:table-row>
      <fo:table-cell>
      <fo:block
      padding-top="1pt" padding-bottom="1pt">

      <fo:inline>Any old text.</fo:inline>
      </fo:block>
      </fo:table-cell>
      </fo:table-row>
      </fo:table-body>
      </fo:table>
      <fo:block>
      <fo:leader leader-pattern="space"/>
      </fo:block>
      </fo:block>
      </fo:flow>
      </fo:page-sequence>
      </fo:root>

      Only difference is the use of border-separation="1pt" in <fo:table>.

      The exception stack is:

      H:\apps\Confirm_XML\Tools>h:\Java\fop-0.92beta\fop
      h:\apps\Confirm_XML\Stylesheets\detailFoo0000.fo h:\apps\Confirm_XML\
      FO\Foo.pdf
      Aug 4, 2006 3:19:08 PM org.apache.fop.cli.Main startFOP
      SEVERE: Exception
      java.lang.NullPointerException
      at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:167)
      at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:114)
      at org.apache.fop.cli.Main.startFOP(Main.java:159)
      at org.apache.fop.cli.Main.main(Main.java:190)

      ---------

      java.lang.NullPointerException
      at org.apache.fop.fo.properties.CompoundPropertyMaker.convertProperty
      (CompoundPropertyMaker.java:172)
      at org.apache.fop.fo.properties.LengthPairProperty$Maker.convertProperty
      (LengthPairProperty.java:61)
      at org.apache.fop.fo.properties.PropertyMaker.make
      (PropertyMaker.java:441)
      at org.apache.fop.fo.properties.CompoundPropertyMaker.make
      (CompoundPropertyMaker.java:212)
      at org.apache.fop.fo.PropertyList.convertAttributeToProperty
      (PropertyList.java:348)
      at org.apache.fop.fo.PropertyList.addAttributesToList
      (PropertyList.java:304)
      at org.apache.fop.fo.FObj.processNode(FObj.java:118)
      at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement
      (FOTreeBuilder.java:308)
      at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:184)
      at org.apache.xalan.transformer.TransformerIdentityImpl.startElement
      (Unknown Source)
      at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown
      Source)
      at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement
      (Unknown Source)
      at
      org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.
      dispatch(Unknown Source)
      at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
      (Unknown Source)
      at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
      at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
      at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
      at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
      at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
      Source)
      at org.apache.xalan.transformer.TransformerIdentityImpl.transform
      (Unknown Source)
      at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:164)
      at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:114)
      at org.apache.fop.cli.Main.startFOP(Main.java:159)
      at org.apache.fop.cli.Main.main(Main.java:190)

      Regards,
      Jeff

      Attachments

        Issue Links

          Activity

            People

              fop-dev@xmlgraphics.apache.org fop-dev
              jeff@hertzberg.info Jeff Hertzberg
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: