codice/ddf

Cannot extract thumbnail for .pptx and .ppt files

emmberk opened this issue · 2 comments

Description

Cannot extract thumbnail for .pptx and .ppt files

08:59:40,213 | WARN  | tCommandThread 0 | nsformer.input.pptx.PptxInputTransformer  169 | log-transformer-pptx | Cannot extract thumbnail:
java.lang.NoClassDefFoundError: Could not initialize class org.apache.poi.sl.draw.geom.PresetGeometries$SingletonHelper
	at org.apache.poi.sl.draw.geom.PresetGeometries.init(PresetGeometries.java:72) ~[bundleFile:?]
	at org.apache.poi.sl.draw.geom.PresetGeometries.getInstance(PresetGeometries.java:115) ~[bundleFile:?]
	at org.apache.poi.xslf.usermodel.XSLFSimpleShape.getGeometry(XSLFSimpleShape.java:703) ~[bundleFile:?]
	at org.apache.poi.sl.draw.DrawSimpleShape.computeOutlines(DrawSimpleShape.java:381) ~[bundleFile:?]
	at org.apache.poi.sl.draw.DrawSimpleShape.draw(DrawSimpleShape.java:74) ~[bundleFile:?]
	at org.apache.poi.sl.draw.DrawSheet.draw(DrawSheet.java:71) ~[bundleFile:?]
	at org.apache.poi.sl.draw.DrawSlide.draw(DrawSlide.java:41) ~[bundleFile:?]
	at org.apache.poi.xslf.usermodel.XSLFSlide.draw(XSLFSlide.java:373) ~[bundleFile:?]
	at ddf.catalog.transformer.input.pptx.PptxInputTransformer.generatePptxThumbnail(PptxInputTransformer.java:205) ~[bundleFile:?]
	at ddf.catalog.transformer.input.pptx.PptxInputTransformer.extractThumbnail(PptxInputTransformer.java:159) ~[bundleFile:?]
	at ddf.catalog.transformer.input.pptx.PptxInputTransformer.transformLogic(PptxInputTransformer.java:116) ~[bundleFile:?]
	at ddf.catalog.transformer.input.pptx.PptxInputTransformer.transform(PptxInputTransformer.java:86) ~[bundleFile:?]
	at ddf.catalog.transformer.input.pptx.PptxInputTransformer.transform(PptxInputTransformer.java:75) ~[bundleFile:?]
	at org.codice.ddf.commands.catalog.IngestCommand.generateMetacard(IngestCommand.java:542) ~[?:?]
	at org.codice.ddf.commands.catalog.IngestCommand.readMetacard(IngestCommand.java:504) ~[?:?]
	at org.codice.ddf.commands.catalog.IngestCommand.addFileToQueue(IngestCommand.java:670) ~[?:?]
	at org.codice.ddf.commands.catalog.IngestCommand.lambda$buildQueue$5(IngestCommand.java:643) ~[?:?]
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:1.8.0_265]
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[?:1.8.0_265]
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_265]
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_265]
	at java.util.Iterator.forEachRemaining(Iterator.java:116) ~[?:1.8.0_265]
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) ~[?:1.8.0_265]
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) ~[?:1.8.0_265]
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) ~[?:1.8.0_265]
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:1.8.0_265]
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:1.8.0_265]
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_265]
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485) ~[?:1.8.0_265]
	at org.codice.ddf.commands.catalog.IngestCommand.buildQueue(IngestCommand.java:643) ~[?:?]
	at org.codice.ddf.commands.catalog.IngestCommand.lambda$executeWithSubject$0(IngestCommand.java:293) ~[?:?]
	...

Steps to Reproduce

catalog:ingest -t pptx <path to a .pptx or .ppt file with at least one slide>
-or-
Upload through ddf-ui

Expected behavior :

thumbnail metacard attribute is populated

Actual behavior:

thumbnail metacard attribute is not populated, and there is a warning in the log

Reproduces how often:

100%

Platform and environment:

macOS 10.15.6, openjdk64-1.8.0.262

Affects versions

2.25.x, master

The commit before 3e77ea7 does not have this issue, so I think the cause is #6138.

I'm not working this if anybody wants to pick it up.