tika-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bob Paulin (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (TIKA-1507) Under OSGi, ForkParser failes to send core parser classes like ExternalParser
Date Sun, 12 Jul 2015 15:34:04 GMT

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

Bob Paulin commented on TIKA-1507:

Stuart McCulloch got back to me from the maven-bundle-plugin side.  I missed the fact that
there is a resource under org.apache.tika.parser.external in the parser project which causes
a split package.  I would suggest we look into moving that file to another package location
or up into tika-core to resolve the split package.  If we do this we can disregard the patch.

> Under OSGi, ForkParser failes to send core parser classes like ExternalParser
> -----------------------------------------------------------------------------
>                 Key: TIKA-1507
>                 URL: https://issues.apache.org/jira/browse/TIKA-1507
>             Project: Tika
>          Issue Type: Bug
>          Components: packaging, parser
>    Affects Versions: 1.6, 1.7
>            Reporter: Nick Burch
>         Attachments: TIKA-1507B.patch
> Under OSGi, if you try to use ForkParser with the Tesseract OCR parser, it will fail
> java.lang.NoClassDefFoundError: org/apache/tika/parser/external/ExternalParser
> 	at org.apache.tika.parser.ocr.TesseractOCRParser.hasTesseract(TesseractOCRParser.java:117)
> 	at org.apache.tika.parser.ocr.TesseractOCRParser.getSupportedTypes(TesseractOCRParser.java:91)
> 	at org.apache.tika.parser.CompositeParser.getParsers(CompositeParser.java:81)
> 	at org.apache.tika.parser.DefaultParser.getParsers(DefaultParser.java:95)
> 	at org.apache.tika.parser.CompositeParser.getParser(CompositeParser.java:209)
> 	at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:244)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:622)
> 	at org.apache.tika.fork.ForkServer.call(ForkServer.java:144)
> 	at org.apache.tika.fork.ForkServer.processRequests(ForkServer.java:124)
> 	at org.apache.tika.fork.ForkServer.main(ForkServer.java:69)
> Caused by: java.lang.ClassNotFoundException: Unable to find class org.apache.tika.parser.external.ExternalParser
> 	at org.apache.tika.fork.ClassLoaderProxy.findClass(ClassLoaderProxy.java:117)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
> 	... 13 more
> ExternalParser lives in the Tika Core jar, not the Tika Parsers one. This all works fine
outside of OSGi, so it looks like something about the OSGi bundling is causing the fork parser
to fail to send the parser-related classes from Tika Core over to the forked JVM

This message was sent by Atlassian JIRA

View raw message