Thanks Tilman, but I found the problem. It is not a malformed PDF. The PDDocument was being prematurely closed in an earlier method.
I still think it would be good if this method added a description message about the null trailer to the Exception. With an ordinary NullPointerException, we really have no idea what might have happened. -----Original Message----- From: Tilman Hausherr [mailto:[email protected]] Sent: Friday, August 07, 2015 5:02 PM To: [email protected] Subject: Re: NullPointerException from PDDocument Can you upload the document somewhere? Tilman Am 07.08.2015 um 23:56 schrieb Kevin Ternes: > I have a particular PDF that I have loaded that throws a NullPointerException > from PDDocument.getDocumentCatalog(). > From PDDocument: > > public PDDocumentCatalog getDocumentCatalog() { > If (documentCatalog == null) > { > COSDictionary trailer = document.getTrailer(); > COSBase dictionary = trailer.getDictionaryObject( COSName.ROOT ); > if (dictionary instanceof COSDictionary) > { > documentCatalog = new PDDocumentCatalog(this, > (COSDictionary) dictionary); > } > else > { > documentCatalog = new PDDocumentCatalog(this); > } > } > return documentCatalog; > } > > The document.getTrailer() returns NULL for this PDF and thus the > NullPointerException from the next line. > > Is it possible that the PDF is malformed? > I do not see where I might have cleared the document.trailer field. > > If any PDFBox developers are listening, would it be reasonable to put a check > into the above code to deal with the NULL document.trailer? > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

