Bug 37415 - java.lang.ClassCastException: org.apache.fop.layoutmgr.PaddingElement
Summary: java.lang.ClassCastException: org.apache.fop.layoutmgr.PaddingElement
Status: CLOSED FIXED
Alias: None
Product: Fop - Now in Jira
Classification: Unclassified
Component: page-master/layout (show other bugs)
Version: trunk
Hardware: Other other
: P2 normal
Target Milestone: ---
Assignee: fop-dev
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-08 22:56 UTC by Matthew Daniel
Modified: 2012-04-01 07:05 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthew Daniel 2005-11-08 22:56:57 UTC
I am getting the following ClassCastException and have been for the past couple
of SVN refreshes. I am, unfortunately, not able to provide you with the
offending FO, but if you'll tell me where to look, I'll do all that I can do
work up a test-case.

java.lang.ClassCastException: org.apache.fop.layoutmgr.PaddingElement
        at
org.apache.fop.layoutmgr.table.TableCellLayoutManager.getNextKnuthElements(TableCellLayoutManager.java:206)
        at
org.apache.fop.layoutmgr.table.TableContentLayoutManager.createElementsForRowGroup(TableContentLayoutManager.java:466)
        at
org.apache.fop.layoutmgr.table.TableContentLayoutManager.getKnuthElementsForRowIterator(TableContentLayoutManager.java:235)
        at
org.apache.fop.layoutmgr.table.TableContentLayoutManager.getNextKnuthElements(TableContentLayoutManager.java:174)
        at
org.apache.fop.layoutmgr.table.TableLayoutManager.getNextKnuthElements(TableLayoutManager.java:207)
        at
org.apache.fop.layoutmgr.FlowLayoutManager.getNextKnuthElements(FlowLayoutManager.java:98)
        at
org.apache.fop.layoutmgr.PageSequenceLayoutManager$PageBreaker.getNextKnuthElements(PageSequenceLayoutManager.java:222)
        at
org.apache.fop.layoutmgr.AbstractBreaker.getNextBlockList(AbstractBreaker.java:438)
        at
org.apache.fop.layoutmgr.PageSequenceLayoutManager$PageBreaker.getNextBlockList(PageSequenceLayoutManager.java:214)
        at
org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:202)
        at
org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:147)
        at
org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:294)
        at
org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:156)
        at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:302)
        at
org.apache.xalan.transformer.TransformerIdentityImpl.endElement(TransformerIdentityImpl.java:1101)
        at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
        at
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(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.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
        at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:141)
        at org.apache.fop.cli.InputHandler.render(InputHandler.java:101)
        at org.apache.fop.cli.Main.startFOP(Main.java:165)
        at org.apache.fop.cli.Main.main(Main.java:195)
Comment 1 Andreas L. Delmelle 2005-11-08 23:10:19 UTC
Cause: class hierarchy of the PaddingElement skips the KnuthElement class

PaddingElement
  ->BorderOrPaddingElement
    ->UnresolvedListElementWithLength
      ->UnresolvedListElement
        ->ListElement

Elementary logic: every KnuthElement is a ListElement, but not every ListElement is a KnuthElement...

Manuel? Do you think replacing the class root is sufficient to solve this?
Comment 2 Jeremias Maerki 2005-11-08 23:28:42 UTC
Just exchange KnuthElement with ListElement in
TableCellLayoutManager.getNextKnuthElements(TableCellLayoutManager.java:206).
Looks like I missed that one when I implemented space resolution. G'night.
Comment 3 Andreas L. Delmelle 2005-11-08 23:35:50 UTC
Done! Apologies, Manuel, for pointing the finger at you... (I assumed, since you had been busy with 
padding etc.)
Comment 4 Glenn Adams 2012-04-01 07:05:59 UTC
batch transition pre-FOP1.0 resolved+fixed bugs to closed+fixed