[ 
https://issues.apache.org/jira/browse/TIKA-642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080459#comment-13080459
 ] 

Cristian Vat commented on TIKA-642:
-----------------------------------

RTF file format starts with "{\rtf1" and the file ends when "}" closes the 
original opening block.
So the attached file is not really valid according to the RTF spec.

Keeping a count of open blocks could work, but it's not quite trivial since we 
need to properly handle also binary entities like embedded images.

I see the CompareRite software which seems to have generated that RTF has been 
retired since 2002 so nobody will probably fix how it generates RTF.
Note that this can also cause problems with other software which uses the swing 
RTF parser, or also other software even non-java which doesn't know how to 
handle this special case.

> Few of RTF files not extracting properly
> ----------------------------------------
>
>                 Key: TIKA-642
>                 URL: https://issues.apache.org/jira/browse/TIKA-642
>             Project: Tika
>          Issue Type: Bug
>          Components: parser
>    Affects Versions: 0.9, 1.0
>         Environment: All
>            Reporter: Manish
>         Attachments: FIRM GAS GTC B RED.DOC
>
>
> Few of the RTF files dont get extracted properly. 
> This is the stack trace: 
> org.apache.tika.exception.TikaException: TIKA-198: Illegal IOException from 
> org.apache.tika.parser.rtf.RTFParser@616d071a
> at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:203)
> at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:197)
> at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:135)
> Caused by: java.io.IOException: Too many close-groups in RTF text
> at javax.swing.text.rtf.RTFParser.write(RTFParser.java:156)
> at javax.swing.text.rtf.RTFParser.writeSpecial(RTFParser.java:101)
> at javax.swing.text.rtf.AbstractFilter.write(AbstractFilter.java:158)
> at javax.swing.text.rtf.AbstractFilter.readFromStream(AbstractFilter.java:88)
> at javax.swing.text.rtf.RTFEditorKit.read(RTFEditorKit.java:65)
> at org.apache.tika.parser.rtf.RTFParser.parse(RTFParser.java:112)
> at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:197)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to