cancel
Showing results for 
Search instead for 
Did you mean: 

PDF conversion operations - Failed to invoke operation Blob.ConcatenatePDFs - Missing root object specification in trailer - [SOLVED]

freemann_
Star Contributor
Star Contributor

Hi,

When I try to merge some PDFs to have one document with nuxeo operation Blob.ConcatenatePDFs, I always have this exception :

Caused by: org.nuxeo.ecm.automation.OperationException: Failed to invoke operation Blob.ConcatenatePDFs
        at org.nuxeo.ecm.automation.core.impl.InvokableMethod.invoke(InvokableMethod.java:190) ~[nuxeo-automation-core-2021.43.7.jar:?]
        at org.nuxeo.ecm.automation.core.impl.OperationChainCompiler$OperationMethod.invoke(OperationChainCompiler.java:147) ~[nuxeo-automation-core-2021.43.7.jar:?]
        at org.nuxeo.ecm.automation.core.impl.OperationChainCompiler$CompiledChainImpl.lambda$invoke$0(OperationChainCompiler.java:212) ~[nuxeo-automation-core-2021.43.7.jar:?]
        at org.nuxeo.ecm.automation.OperationContext.call(OperationContext.java:331) ~[nuxeo-automation-core-2021.43.7.jar:?]
        at org.nuxeo.ecm.automation.OperationContext.callWithChainParameters(OperationContext.java:296) ~[nuxeo-automation-core-2021.43.7.jar:?]
        at org.nuxeo.ecm.automation.core.impl.OperationChainCompiler$CompiledChainImpl.invoke(OperationChainCompiler.java:209) ~[nuxeo-automation-core-2021.43.7.jar:?]
...
Caused by: java.io.IOException: Missing root object specification in trailer.
        at org.apache.pdfbox.pdfparser.COSParser.parseTrailerValuesDynamically(COSParser.java:2865) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.pdfparser.PDFParser.initialParse(PDFParser.java:175) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:226) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:1228) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:1146) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.multipdf.PDFMergerUtility.legacyMergeDocuments(PDFMergerUtility.java:455) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(PDFMergerUtility.java:346) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(PDFMergerUtility.java:330) ~[pdfbox-2.0.24.jar:2.0.24]
        at org.nuxeo.ecm.automation.core.operations.blob.ConcatenatePDFs.appendPDFs(ConcatenatePDFs.java:86) ~[nuxeo-automation-core-2021.43.7.jar:?]
        at org.nuxeo.ecm.automation.core.operations.blob.ConcatenatePDFs.run(ConcatenatePDFs.java:80) ~[nuxeo-automation-core-2021.43.7.jar:?]

I read on apache issue , it seams like it's dued by early closing when writing the merged file like here (I was writing files and I didnt wait for them to close, therefore the jar had problems in merging them. ).

How can can avoid closing files before the merge finished ?

Thanks for help

1 ACCEPTED ANSWER

freemann_
Star Contributor
Star Contributor

Hi,

I found where this issue come from. It comes from a corruped document in the list of documents to concatenate. So, I deleted the document, excute the operation (after restart nuxeo) again and it works.

The problem is, when the nuxeo instance generate the esxception at the first time, we are not able to concatenate another list of document even if all documents are good. We have to restart nuxeo, to make it works again.

Thanks

View answer in original post

1 REPLY 1

freemann_
Star Contributor
Star Contributor

Hi,

I found where this issue come from. It comes from a corruped document in the list of documents to concatenate. So, I deleted the document, excute the operation (after restart nuxeo) again and it works.

The problem is, when the nuxeo instance generate the esxception at the first time, we are not able to concatenate another list of document even if all documents are good. We have to restart nuxeo, to make it works again.

Thanks