Karl Wright created TIKA-2693:
---------------------------------

             Summary: Tika 1.17 uses the wrong classloader for reflection
                 Key: TIKA-2693
                 URL: https://issues.apache.org/jira/browse/TIKA-2693
             Project: Tika
          Issue Type: Bug
          Components: general
    Affects Versions: 1.17
            Reporter: Karl Wright


I don't know whether this was addressed in 1.18, but Tika seemingly uses the 
wrong classloader when loading some classes by reflection.

In ManifoldCF, there's a two-tiered classloader hierarchy.  Tika runs in the 
higher class level.  Its expectation is that classes that are loaded via 
reflection use the classloader associated with the class that is resolving the 
reflection, NOT the thread classloader.  That's standard Java practice.

But apparently there's a place where Tika doesn't do it that way:

{code}
Error tossed: org/apache/poi/POIXMLTextExtractor
java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTextExtractor
        at 
org.apache.tika.parser.microsoft.ooxml.OOXMLParser.parse(OOXMLParser.java:106) 
~[?:?]
        at 
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280) ~[?:?]
        at 
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280) ~[?:?]
        at 
org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:143) ~[?:?]
        at 
org.apache.manifoldcf.agents.transformation.tika.TikaParser.parse(TikaParser.java:74)
 ~[?:?]
{code}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to