You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ni...@apache.org on 2015/01/07 16:31:17 UTC
svn commit: r1650083 -
/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java
Author: nick
Date: Wed Jan 7 15:31:17 2015
New Revision: 1650083
URL: http://svn.apache.org/r1650083
Log:
Temporary workaround for the TIKA-1507 ForkParser / OGI issue
Modified:
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java?rev=1650083&r1=1650082&r2=1650083&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/ocr/TesseractOCRParser.java Wed Jan 7 15:31:17 2015
@@ -114,9 +114,17 @@ public class TesseractOCRParser extends
// Try running Tesseract from there, and see if it exists + works
String[] checkCmd = { tesseract };
- boolean hasTesseract = ExternalParser.check(checkCmd);
- TESSERACT_PRESENT.put(tesseract, hasTesseract);
- return hasTesseract;
+ try {
+ boolean hasTesseract = ExternalParser.check(checkCmd);
+ TESSERACT_PRESENT.put(tesseract, hasTesseract);
+ return hasTesseract;
+ } catch (NoClassDefFoundError e) {
+ // This happens under OSGi + Fork Parser - see TIKA-1507
+ // As a workaround for now, just say we can't use OCR
+ // TODO Resolve it so we don't need this try/catch block
+ TESSERACT_PRESENT.put(tesseract, false);
+ return false;
+ }
}
public void parse(Image image, ContentHandler handler, Metadata metadata, ParseContext context) throws IOException,