You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by bu...@apache.org on 2003/02/12 19:02:32 UTC

DO NOT REPLY [Bug 17013] New: - fop aborts with NullPointerException / id on table-row

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17013>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17013

fop aborts with NullPointerException / id on table-row

           Summary: fop aborts with NullPointerException / id on table-row
           Product: Fop
           Version: 0.20.4
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: pdf renderer
        AssignedTo: fop-dev@xml.apache.org
        ReportedBy: fherrmann@idegmbh.de


Hello,

FOP aborts with a NullPointerException when a table consisting of rows each 
having an id spans more than one page. The exception does not happen when the 
table fits on one page or when the id is put on the first cell instead of the 
row.

example fo file: 

<?xml version="1.0" encoding="ISO-8859-1"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master margin-right="2.5cm" margin-left="2.5cm" margin-
bottom="3cm" margin-top="3cm" page-width="21cm" page-height="29.7cm" master-
name="my-master">
<fo:region-body margin-bottom="1.5cm" margin-top="1.5cm"/>
<fo:region-before extent="1.5cm"/>
<fo:region-after extent="1.5cm"/>
</fo:simple-page-master>
</fo:layout-master-set>

<fo:page-sequence master-reference="my-master">
<fo:flow flow-name="xsl-region-body">
<fo:table table-layout="fixed" font-size="24pt">
<fo:table-column column-width="16cm"/>
<fo:table-body>
<fo:table-row id="1">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="2">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="3">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="4">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="5">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="6">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="7">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="8">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="9">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="10">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="11">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="12">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="13">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="14">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="15">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="16">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="17">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="18">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="19">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="20">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row id="21">
<fo:table-cell border-style="solid">
<fo:block>1</fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:flow>
</fo:page-sequence>
</fo:root>

FOP output:

fop -d -fo bug.fo bug.pdf
[DEBUG] Input mode: 
[DEBUG] FO 
[DEBUG] fo input file: bug.fo
[DEBUG] Output mode: 
[DEBUG] pdf
[DEBUG] output file: bug.pdf
[DEBUG] OPTIONS
[DEBUG] no user configuration file is used [default]
[DEBUG] debug mode on
[DEBUG] dump configuration
[DEBUG] quiet mode on
[DEBUG] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser
[DEBUG] base directory: file:/d:/catalog/Rammax/
[INFO] FOP 0.20.4
[DEBUG] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser
[INFO] building formatting object tree
[DEBUG] setting up fonts
[INFO] [1]
[INFO] [2]
[ERROR] null
org.apache.fop.apps.FOPException
	at org.apache.fop.apps.CommandLineStarter.run(Unknown Source)
	at org.apache.fop.apps.Fop.main(Unknown Source)

---------

java.lang.NullPointerException
	at org.apache.fop.datatypes.IDReferences.setPosition(Unknown Source)
	at org.apache.fop.datatypes.IDReferences.configureID(Unknown Source)
	at org.apache.fop.fo.flow.TableRow.layout(Unknown Source)
	at org.apache.fop.fo.flow.TableBody.layout(Unknown Source)
	at org.apache.fop.fo.flow.Table.layout(Unknown Source)
	at org.apache.fop.fo.flow.Flow.layout(Unknown Source)
	at org.apache.fop.fo.flow.Flow.layout(Unknown Source)
	at org.apache.fop.fo.pagination.PageSequence.format(Unknown Source)
	at org.apache.fop.apps.StreamRenderer.render(Unknown Source)
	at org.apache.fop.fo.FOTreeBuilder.endElement(Unknown Source)
	at org.apache.xerces.parsers.AbstractSAXParser.endElement
(AbstractSAXParser.java:559)
	at org.apache.xerces.impl.XMLNamespaceBinder.handleEndElement
(XMLNamespaceBinder.java:853)
	at org.apache.xerces.impl.XMLNamespaceBinder.endElement
(XMLNamespaceBinder.java:643)
	at org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement
(XMLDTDValidator.java:2978)
	at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement
(XMLDTDValidator.java:918)
	at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.handleEndElement
(XMLDocumentFragmentScannerImpl.java:1145)
	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement
(XMLDocumentFragmentScannerImpl.java:988)
	at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.
dispatch(XMLDocumentFragmentScannerImpl.java:1446)
	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(XMLDocumentFragmentScannerImpl.java:333)
	at org.apache.xerces.parsers.StandardParserConfiguration.parse
(StandardParserConfiguration.java:529)
	at org.apache.xerces.parsers.StandardParserConfiguration.parse
(StandardParserConfiguration.java:585)
	at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:147)
	at org.apache.xerces.parsers.AbstractSAXParser.parse
(AbstractSAXParser.java:1148)
	at org.apache.fop.apps.Driver.render(Unknown Source)
	at org.apache.fop.apps.CommandLineStarter.run(Unknown Source)
	at org.apache.fop.apps.Fop.main(Unknown Source)


with best regards,

Frank Herrmann

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org