PdfTextFilter may leave parsed document open in case of errors
--------------------------------------------------------------

                 Key: JCR-764
                 URL: https://issues.apache.org/jira/browse/JCR-764
             Project: Jackrabbit
          Issue Type: Bug
    Affects Versions: 1.2.2
            Reporter: fabrizio giustina
            Priority: Trivial
         Attachments: textfilter_close.diff

In case of errors in a parsed PDF document jackrabbit may fail to properly 
close the parsed document. PDFBox will write a stack trace to system out at 
finalize to warn agains this.

this is the resulting log:

WARN org.apache.jackrabbit.core.query.LazyReader LazyReader.java(read:82) 
20.02.2007 15:42:50 exception initializing reader 
org.apache.jackrabbit.core.query.PdfTextFilter$1: java.io.IOException: Error: 
Expected hex number, actual=' 2'
java.lang.Throwable: Warning: You did not close the PDF Document
   at org.pdfbox.cos.COSDocument.finalize(COSDocument.java:384)
   at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
   at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
   at java.lang.ref.Finalizer.access$100(Finalizer.java:14)
   at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)


this may happens because the parse() method at

parser = new PDFParser(new BufferedInputStream(in));
parser.parse();

immediately creates a document, but it can throw an exception while processing 
the file.
PdfTextFilter should check if parser still holds a document and close it 
appropriately.



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to