[ https://issues.apache.org/jira/browse/TIKA-2693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16573935#comment-16573935 ]
Karl Wright commented on TIKA-2693: ----------------------------------- I am currently with my wife in the emergency room, so trying things out will take a while. We have agreed to hold our release until this code ships. For clients that need the fix before that I am happy to build from your branch. > 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 > Priority: Major > > 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)