2016-08-11 1 views
1

Lorsque je tente d'ouvrir le pdf à ce lien, http://www.health.state.mn.us/divs/hpsc/hep/merc/ctfapp2015b.pdf, en utilisant iText, je reçois un NullPointerException avec le stacktrace suivant:Impossible d'ouvrir le fichier PDF avec iText 7.0.0 en raison de NullPointerException lancée par PDFDocument

NullPointerException com.itextpdf.kernel.pdf.tagging.ParentTreeHandler.registerMcr (ParentTreeHandler.java:154) 
java.lang.NullPointerException 
    at com.itextpdf.kernel.pdf.tagging.ParentTreeHandler.registerMcr(ParentTreeHandler.java:154) 
    at com.itextpdf.kernel.pdf.tagging.ParentTreeHandler.registerAllMcrs(ParentTreeHandler.java:246) 
    at com.itextpdf.kernel.pdf.tagging.ParentTreeHandler.<init>(ParentTreeHandler.java:101) 
    at com.itextpdf.kernel.pdf.tagging.PdfStructTreeRoot.<init>(PdfStructTreeRoot.java:78) 
    at com.itextpdf.kernel.pdf.PdfDocument.open(PdfDocument.java:1299) 
    at com.itextpdf.kernel.pdf.PdfDocument.<init>(PdfDocument.java:199) 

Mon code est très simple:

(new PdfDocument(new PdfReader "blah.pdf")); 

Y at-il quelque chose qui cloche avec ce PDF? Y a-t-il un ou plusieurs type (s) de drapeaux que je dois passer pour pouvoir l'ouvrir?

EDIT: Cela se produit lors de l'utilisation d'iText 7.0.0.

Répondre

5

Votre document contient un arbre de structure corrompu ou un arbre de balises. Vous pouvez également vérifier ce qu'Acrobat (ou tout autre visualiseur PDF) affiche lorsque vous ouvrez des tags. Lorsque vous cliquez sur une étiquette, le lecteur ne trouve pas le contenu correspondant à cette étiquette. Je ne pense pas que vous serez capable d'ouvrir ce document sans exception dans iText 7.0.0, mais ce problème est déjà corrigé (maintenant seules les erreurs de logger sont imprimées et aucune exception n'est levée), et le correctif sera disponible en 7.0.1. Ou vous pouvez consulter la version actuelle de l'instantané si vous avez besoin du correctif plus tôt.