Uploaded image for project: 'PDFBox'
  1. PDFBox
  2. PDFBOX-1859

ClassCastException for unknown destination type

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.3, 1.8.8, 1.8.9
    • Fix Version/s: 1.8.9
    • Component/s: PDModel
    • Labels:
      None

      Description

      Trying to read the outlines failed for the attached document.

      import java.io.IOException;
      
      import org.apache.pdfbox.pdmodel.PDDocument;
      import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDDestination;
      import org.apache.pdfbox.pdmodel.interactive.documentnavigation.outline.PDOutlineItem;
      import org.apache.pdfbox.pdmodel.interactive.documentnavigation.outline.PDOutlineNode;
      
      public class TestPDDestination {
      
      	public static void main(String[] args) throws IOException {
      		PDDocument doc = PDDocument.load("Speisepläne.pdf");
      		traverse(doc.getDocumentCatalog().getDocumentOutline());
      		doc.close();
      	}
      	
      	static void traverse(PDOutlineNode node) throws IOException {
      		if (node instanceof PDOutlineItem) {
      			PDDestination dst = ((PDOutlineItem) node).getDestination();
      			/**
      			 * throws java.lang.ClassCastException: org.apache.pdfbox.cos.COSFloat cannot be cast to org.apache.pdfbox.cos.COSName,
      			 * but should be something like a PDPageXYZDestination!
      			 */
      			System.out.println(dst);
      		}
      		for (PDOutlineItem child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
      			traverse(child);
      		}
      	}
      }
      

        Attachments

        1. Speisepläne.pdf
          109 kB
          Hendrik Lescak

          Issue Links

            Activity

              People

              • Assignee:
                tilman Tilman Hausherr
                Reporter:
                hendrik.lescak Hendrik Lescak
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: