Hi, While loading larger PDF files more than 200 MB for 10 concurrent users with 3GB heap Space configured in JVM, we are getting following exception :
com.apple.ist.acss.pdf.encoding.exception.EncoderException: org.apache.pdfbox.exceptions.WrappedIOException at com.apple.ist.acss.core.encoder.impl.WatermarksPDFEncoderImpl.getWatermarksEncodedPDF(SourceFile:76) at com.apple.plm.pdfwatermarking.util.PDFBinaryCodeEncoder.getEncodedContent(PDFBinaryCodeEncoder.java:89) at com.apple.plm.pdfwatermarking.util.PDFWatermarkingCommon.callWatermarkForFM(PDFWatermarkingCommon.java:471) at com.apple.plm.pdfwatermarking.PDFWatermarking.doFilter(PDFWatermarking.java:128) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run( ThreadPoolExecutor.java:603) at java.lang.Thread.run ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: org.apache.pdfbox.exceptions.WrappedIOException at org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:278) at com.apple.ist.acss.core.encoder.impl.WatermarksPDFEncoderImpl.getWatermarksEncodedPDF(SourceFile:51) ... 19 more Caused by: java.lang.IndexOutOfBoundsException: Index: 1, Size: 1 at java.util.ArrayList.rangeCheck(ArrayList.java:604) at java.util.ArrayList.get(ArrayList.java:382) at org.apache.pdfbox.io.RandomAccessBuffer.seek(RandomAccessBuffer.java:110) at org.apache.pdfbox.io.RandomAccessFileOutputStream.write(RandomAccessFileOutputStream.java:106) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) at java.io.FilterOutputStream.close(FilterOutputStream.java:157) at org.apache.pdfbox.pdfparser.BaseParser.parseCOSStream(BaseParser.java:616) at org.apache.pdfbox.pdfparser.PDFParser.parseObject(PDFParser.java:650) at org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:203) ... 20 more Is there any way by which we can address this issue? i.e. instead of loading entire PDF in memory, load it in chunks? Any pointers on this would be really helpful. Thanks, Swapnil

