I have in a Karaf 4.3.3 application an Excel export based on Apache Poi
5.1.0.
During the export the following exception occurs:
Caused by: java.lang.NoClassDefFoundError:
org/apache/logging/log4j/internal/DefaultLogBuilder
at
org.apache.logging.log4j.spi.AbstractLogger$LocalLogBuilder.initialValue(AbstractLogger.java:2953)
at
org.apache.logging.log4j.spi.AbstractLogger$LocalLogBuilder.initialValue(AbstractLogger.java:2945)
at java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:180)
at java.lang.ThreadLocal.get(ThreadLocal.java:170)
at
org.apache.logging.log4j.spi.AbstractLogger.getLogBuilder(AbstractLogger.java:2930)
at
org.apache.logging.log4j.spi.AbstractLogger.atLevel(AbstractLogger.java:2923)
at
org.apache.logging.log4j.spi.AbstractLogger.atWarn(AbstractLogger.java:2882)
at org.apache.poi.util.XMLHelper.logThrowable(XMLHelper.java:307)
at org.apache.poi.util.XMLHelper.trySet(XMLHelper.java:287)
at
org.apache.poi.util.XMLHelper.getDocumentBuilderFactory(XMLHelper.java:114)
at org.apache.poi.util.XMLHelper.<clinit>(XMLHelper.java:85)
at
org.apache.poi.ooxml.util.DocumentHelper.newDocumentBuilder(DocumentHelper.java:47)
at org.apache.poi.ooxml.util.DocumentHelper.<clinit>(DocumentHelper.java:36)
at
org.apache.poi.openxml4j.opc.internal.ContentTypeManager.save(ContentTypeManager.java:429)
at org.apache.poi.openxml4j.opc.ZipPackage.saveImpl(ZipPackage.java:554)
at org.apache.poi.openxml4j.opc.OPCPackage.save(OPCPackage.java:1487)
at org.apache.poi.ooxml.POIXMLDocument.write(POIXMLDocument.java:227)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.write(SXSSFWorkbook.java:963)
Caused by: java.lang.ClassNotFoundException:
org.apache.logging.log4j.internal.DefaultLogBuilder not found by
org.ops4j.pax.logging.pax-logging-api [7]
at
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1565)
at
org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:78)
at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1950)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 32 more
The org.ops4j.pax.logging.pax-logging-api bundle has no import to
org.apache.logging.log4j.internal.
karaf@root()> headers 7
...
Import-Package =
org.osgi.framework;version="[1.0.0,2.0.0)",
org.osgi.framework.wiring;version="[1.0.0,2.0.0)",
org.osgi.util.tracker;version="[1.0.0,2.0.0)",
org.osgi.service.event;resolution:=optional;version="[1.0.0,2.0.0)",
org.osgi.service.log;version="[1.4.0,2.0.0)",
org.apache.log;resolution:=optional,
javax.xml.parsers,
org.w3c.dom,
org.osgi.service.log.admin;resolution:=optional;version="[1.0,2.0)",
org.osgi.service.log.stream;resolution:=optional;version="[1.0,2.0)"
Is this a known bug?
Regards
Richard