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

Andreas Lehmkühler commented on PDFBOX-4671:
--------------------------------------------

The default implementation for caching is no longer loaded by using the 
ServiceLookup mechanism for 2 reasons:
* it doesn't make sense to use such an mechanism if the class can be simply 
instantiated without searching for it first
* the  simply uses the first implementation of the CachBridge found by using 
the ServcieLookup mechanism. Before the change, this could be the our own 
default implementation or the external one. It'd be chosen by coincidence. Now, 
the "first" external one is used and if not available out default implementation

> NoClassDefFoundError: Could not initialize class 
> org.apache.pdfbox.jbig2.JBIG2ImageReader
> -----------------------------------------------------------------------------------------
>
>                 Key: PDFBOX-4671
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-4671
>             Project: PDFBox
>          Issue Type: Bug
>          Components: JBIG2
>    Affects Versions: 3.0.2 JBIG2
>            Reporter: Luis Panadero Guardeño
>            Assignee: Andreas Lehmkühler
>            Priority: Major
>             Fix For: 3.0.4 JBIG2
>
>         Attachments: jbig2 servlet failcase.tar.gz
>
>
> JBIG2 ImageIO plugin sometimes does a NoClassDefFoundError
> I'm using TwelveMonkeys IIOProviderContextListener to fix the problem of 
> ImageIO with servlets, and additionally doing a 
> {{ImageIO}}.{{scanForPlugins}}(). But this keeps happening randomly. Any idea 
> where could be the problem ?
> This is happening with Tomcat 7  running over Oracle Java 8 (latest version)
>  
> {code:java}
> java.lang.NoClassDefFoundError: Could not initialize class 
> org.apache.pdfbox.jbig2.JBIG2ImageReader
>  at 
> org.apache.pdfbox.jbig2.JBIG2ImageReaderSpi.createReaderInstance(JBIG2ImageReaderSpi.java:117)
>  at 
> javax.imageio.spi.ImageReaderSpi.createReaderInstance(ImageReaderSpi.java:320)
>  at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:529)
>  at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:513)
>  at org.apache.pdfbox.filter.Filter.findImageReader(Filter.java:155)
>  at org.apache.pdfbox.filter.JBIG2Filter.decode(JBIG2Filter.java:67)
>  at org.apache.pdfbox.cos.COSInputStream.create(COSInputStream.java:84)
>  at org.apache.pdfbox.cos.COSStream.createInputStream(COSStream.java:175)
>  at 
> org.apache.pdfbox.pdmodel.common.PDStream.createInputStream(PDStream.java:241)
>  at 
> org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject.createInputStream(PDImageXObject.java:735)
>  at 
> org.apache.pdfbox.pdmodel.graphics.image.SampledImageReader.from1Bit(SampledImageReader.java:253)
>  at 
> org.apache.pdfbox.pdmodel.graphics.image.SampledImageReader.getRGBImage(SampledImageReader.java:212)
>  at 
> org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject.getImage(PDImageXObject.java:444)
>  at 
> org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject.getImage(PDImageXObject.java:425)
>  at org.apache.pdfbox.rendering.PageDrawer.drawImage(PageDrawer.java:1100)
>  at 
> org.apache.pdfbox.contentstream.operator.graphics.DrawObject.process(DrawObject.java:63)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:869)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:505)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:479)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:152)
>  at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:263)
>  at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:321)
>  at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:243)
>  at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:203)
>  at 
> com.digibis.digiimage.pdf.pdfbox.PdfBoxPdfProcessor.getImageFromDocumentPage(PdfBoxPdfProcessor.java:105){code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to