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

Konrad Windszus edited comment on TIKA-4698 at 3/25/26 11:49 AM:
-----------------------------------------------------------------

The following solution approaches come to mind:
# Adopt [OSGi Service Loader 
Mediator|https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.loader.html]
# Make tika-parsers-standard-package an [OSGi fragment 
bundle|https://docs.osgi.org/specification/osgi.core/8.0.0/framework.module.html#framework.module.fragmentbundles]
 of the tika-core bundle (that way both share a classloader)
# Add an explicit "Import-Package" header for "org.apache.tika.parser.external" 
to "tika-parsers-standard-package


was (Author: kwin):
Two solution approaches come to mind:
# Adopt [OSGi Service Loader 
Mediator|https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.loader.html]
# Make tika-parsers-standard-package an [OSGi fragment 
bundle|https://docs.osgi.org/specification/osgi.core/8.0.0/framework.module.html#framework.module.fragmentbundles]
 of the tika-core bundle (that way both share a classloader)

> Tika-parsers-standard-package (used as standalone bundle) fails loading 
> CompositeExternalParser in OSGi
> -------------------------------------------------------------------------------------------------------
>
>                 Key: TIKA-4698
>                 URL: https://issues.apache.org/jira/browse/TIKA-4698
>             Project: Tika
>          Issue Type: Bug
>          Components: parser
>    Affects Versions: 3.3.0
>            Reporter: Konrad Windszus
>            Priority: Major
>
> When not using 
> [tika-bundle-standard|https://github.com/apache/tika/blob/main/tika-bundles/tika-bundle-standard/pom.xml]
>  but instead both 
> [tika-parsers-standard-package|https://github.com/apache/tika/tree/main/tika-parsers/tika-parsers-standard/tika-parsers-standard-package]
>  and [tika-core|https://github.com/apache/tika/tree/main/tika-core] as 
> separate bundles the parsers are not loaded correctly. Instead the following 
> exception can be observed 
> with Tika 3.3.0:
> {code}
> java.lang.ClassNotFoundException: 
> org.apache.tika.parser.external.CompositeExternalParser not found by 
> org.apache.tika.parsers-standard-package [16]
>       at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1585)
>       at 
> org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79)
>       at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1970)
>       at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
>       at 
> org.apache.tika.config.ServiceLoader.loadStaticServiceProviders(ServiceLoader.java:348)
>       at 
> org.apache.tika.parser.DefaultParser.getDefaultParsers(DefaultParser.java:105)
>       at org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:52)
>       at org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:70)
>       at org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:79)
>       at org.apache.tika.parser.internal.Activator.start(Activator.java:40)
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to