[ 
https://issues.apache.org/jira/browse/PDFBOX-872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Adam Nichols resolved PDFBOX-872.
---------------------------------

       Resolution: Fixed
    Fix Version/s: 1.4.0
         Assignee: Adam Nichols

Patch looks good.  Nice documentation.  The only problem I see is that it 
removes a method which people may be depending on.  I'm going to add that 
function back in and just default the boolean decrypt to "false" since the name 
of the function is "encryptData".  I'm marking the old encryptData() method 
deprecated in favor of the new one.  I just don't want to break compatibility 
with anyone's project without any warning.  It will probably be removed in 
version 2.0, as people normally expect some API changes when the major version 
changes.

Patch committed (with small backwards compatibility addition) in revision 
1037900.

> ERROR org.apache.pdfbox.filter.FlateFilter  - Stop reading corrupt stream
> -------------------------------------------------------------------------
>
>                 Key: PDFBOX-872
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-872
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Parsing
>    Affects Versions: 1.3.1
>         Environment: Windows XP [Версия 5.1.2600]
> java version "1.6.0_22"
> Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
> Java HotSpot(TM) Client VM (build 17.1-b03, mixed mode, sharing)
>            Reporter: Vladimir
>            Assignee: Adam Nichols
>            Priority: Critical
>             Fix For: 1.4.0
>
>         Attachments: PDFBOX-872.patch
>
>
> This report: 
> http://www2.goldmansachs.com/our-firm/press/press-releases/current/pdfs/2010-q2-earnings.pdf
> With this code:
> public static String getTransformed(InputStream inputStream) {
>         PDDocument pdDocument = null;
>         String document = null;
>         try {
>             PDFParser parser = new PDFParser(inputStream);
>             parser.parse();
>             pdDocument = parser.getPDDocument();
>             PDFText2HTML pdf2html = new PDFText2HTML("UTF-8");
>             document = pdf2html.getText(pdDocument);
>         } catch (IOException e) {
>             e.printStackTrace();      
>         } finally {
>             if (pdDocument != null) {
>                 try {
>                     pdDocument.getDocument().close();
>                 } catch (IOException e) {
>                     e.printStackTrace();
>                       }
>             }
>         }
>         return document;
>     }
> returns:
> 17:01:15,609 [main] ERROR org.apache.pdfbox.filter.FlateFilter  - Stop 
> reading corrupt stream
> null
> java.io.IOException: Error: Expected an integer type, actual=''
>       at org.apache.pdfbox.pdfparser.BaseParser.readInt(BaseParser.java:1310)
>       at 
> org.apache.pdfbox.pdfparser.PDFObjectStreamParser.parse(PDFObjectStreamParser.java:81)
>       at 
> org.apache.pdfbox.cos.COSDocument.dereferenceObjectStreams(COSDocument.java:449)
>       at 
> org.apache.pdfbox.pdmodel.PDDocument.openProtection(PDDocument.java:1112)
>       at org.apache.pdfbox.pdmodel.PDDocument.decrypt(PDDocument.java:591)
>       at 
> org.apache.pdfbox.util.PDFTextStripper.writeText(PDFTextStripper.java:246)
>       at 
> org.apache.pdfbox.util.PDFTextStripper.getText(PDFTextStripper.java:184)
> in Foxit PDF this file was opened normally

-- 
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