Pat Hickey created PDFBOX-1872:
----------------------------------
Summary: PDMetadata.exportXMPMetadata fails when Metadata has
encrypted stream
Key: PDFBOX-1872
URL: https://issues.apache.org/jira/browse/PDFBOX-1872
Project: PDFBox
Issue Type: Bug
Components: JempBox, PDModel
Affects Versions: 1.8.3
Environment: Not sure it matters, but Solaris (SunOS 5.10), java
1.6.0_19,
Reporter: Pat Hickey
Priority: Minor
My guess is that PDDocumentCatalog.getMetadata() gives PDMetadata the raw
stream, instead of the filtered one. Then PDMetadata.exportXMPMetadata() calls
XMPMetadata.load(), which cannot parse the encrypted stream.
As a workaround, this seems to do the trick (where document is the PDDocument
loaded from the PDF):
String content = null;
COSStream md =
(COSStream)document.getDocument().getCatalog().getDictionaryObject(
COSName.METADATA );
if ( md != null ) {
PDStream pd = new PDStream( md );
content = pd.getInputStreamAsString();
}
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)