https://bz.apache.org/bugzilla/show_bug.cgi?id=62564

            Bug ID: 62564
           Summary: A classloader issue looking up
                    org.apache.poi.poifs.crypt.agile.AgileEncryptionInfoBu
                    ilder
           Product: POI
           Version: 3.17-FINAL
          Hardware: Other
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: POI Overall
          Assignee: dev@poi.apache.org
          Reporter: kwri...@apache.org
  Target Milestone: ---

Please see the following stack trace:

org.apache.tika.exception.TikaException: TIKA-198: Illegal IOException from
org.apache.tika.parser.microsoft.OfficeParser@62980adb
        at
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:286)
~[tika-core-1.17.jar:1.17]
        at
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
~[tika-core-1.17.jar:1.17]
        at
org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:143)
~[tika-core-1.17.jar:1.17]
        at
org.apache.manifoldcf.agents.transformation.tika.TikaParser.parse(TikaParser.java:74)
~[mcf-tika-connector.jar:?]
        at
org.apache.manifoldcf.agents.transformation.tika.TikaExtractor.addOrReplaceDocumentWithException(TikaExtractor.java:235)
[mcf-tika-connector.jar:?]
Caused by: java.io.IOException: java.lang.ClassNotFoundException:
org.apache.poi.poifs.crypt.agile.AgileEncryptionInfoBuilder
        at
org.apache.poi.poifs.crypt.EncryptionInfo.<init>(EncryptionInfo.java:150)
~[?:?]
        at
org.apache.poi.poifs.crypt.EncryptionInfo.<init>(EncryptionInfo.java:102)
~[?:?]
       at
org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:203)
~[?:?]
        at
org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:132)
~[?:?]
        at
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280) ~[?:?]
        ... 12 more
Caused by: java.lang.ClassNotFoundException:
org.apache.poi.poifs.crypt.agile.AgileEncryptionInfoBuilder
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
~[?:1.8.0_171]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_171]
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
~[?:1.8.0_171]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_171]
        at
org.apache.poi.poifs.crypt.EncryptionInfo.getBuilder(EncryptionInfo.java:222)
~[?:?]
        at
org.apache.poi.poifs.crypt.EncryptionInfo.<init>(EncryptionInfo.java:148)
~[?:?]
        at
org.apache.poi.poifs.crypt.EncryptionInfo.<init>(EncryptionInfo.java:102)
~[?:?]
        at
org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:203)
~[?:?]
        at
org.apache.tika.parser.microsoft.OfficeParser.parse(OfficeParser.java:132)
~[?:?]
        at
org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280) ~[?:?]
        ... 12 more


This occurs in the context of Apache ManifoldCF, which is using Tika to extract
document content from a variety of different document types, which in turn is
using Apache POI.  ManifoldCF uses a fairly common tiered classloader setup,
and has all the POI jars at the same level along with many others.  The basic
expectation is that the classloader that was used to load a class should be
used to load any class it depends on, whether directly or via reflection.  But
unfortunately it appears that there's a place in POI where this isn't honored,
and instead the wrong class loader is used.

A similar ticket was opened about a year ago for the POI project, related to
how xmlbeans did its reflection class loading, and that was successfully
resolved.  This seems to be another similar situation.

The place where this occurred was in a production system whose documents I do
not have access to.  It would be good to know what type of document it was as
well.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org

Reply via email to