Can you try a higher -Xmx value?
Tilman
Am 12.05.2014 17:41, schrieb [email protected]:
Hi,
I was running some unit tests to see if the fix for the following bug
https://issues.apache.org/jira/browse/PDFBOX-1426 was working for our
project.
I wanted to test as well that I was not introducing some problems
through using an unreleased version.
The following error occurred while converting PDF to TIF
Caused by: java.lang.OutOfMemoryError: Java heap space
at java.awt.image.DataBufferInt.<init>(_DataBufferInt.java:41_)
at java.awt.image.Raster.createPackedRaster(_Raster.java:458_)
at
java.awt.image.DirectColorModel.createCompatibleWritableRaster(_DirectColorModel.java:1015_)
at java.awt.image.BufferedImage.<init>(_BufferedImage.java:321_)
at
org.apache.pdfbox.pdmodel.graphics.image.SampledImageReader.getStencilImage(_SampledImageReader.java:68_)
at
org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject.getStencilImage(_PDImageXObject.java:198_)
at
org.apache.pdfbox.util.operator.pagedrawer.Invoke.process(_Invoke.java:74_)
at
org.apache.pdfbox.util.PDFStreamEngine.processOperator(_PDFStreamEngine.java:529_)
at
org.apache.pdfbox.util.PDFStreamEngine.processSubStream(_PDFStreamEngine.java:254_)
at
org.apache.pdfbox.util.PDFStreamEngine.processSubStream(_PDFStreamEngine.java:221_)
at
org.apache.pdfbox.util.PDFStreamEngine.processStream(_PDFStreamEngine.java:203_)
at
org.apache.pdfbox.rendering.PageDrawer.drawPage(_PageDrawer.java:162_)
at
org.apache.pdfbox.rendering.PDFRenderer.renderPage(_PDFRenderer.java:214_)
at
org.apache.pdfbox.rendering.PDFRenderer.renderImage(_PDFRenderer.java:147_)
at
org.apache.pdfbox.rendering.PDFRenderer.renderImageWithDPI(_PDFRenderer.java:82_)
at
com.sungard.liberty.applications.PDFSplitterServiceImpl.convertPDFtoTIFF(_PDFSplitterServiceImpl.java:76_)
at
com.sungard.liberty.applications.PDFSplitterServiceTest.parseSinglePDF(_PDFSplitterServiceTest.java:46_)
at sun.reflect.NativeMethodAccessorImpl.invoke0(_Native Method_)
at
sun.reflect.NativeMethodAccessorImpl.invoke(_NativeMethodAccessorImpl.java:39_)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(_DelegatingMethodAccessorImpl.java:25_)
at java.lang.reflect.Method.invoke(_Method.java:597_)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(_FrameworkMethod.java:45_)
at
org.junit.internal.runners.model.ReflectiveCallable.run(_ReflectiveCallable.java:15_)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(_FrameworkMethod.java:42_)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(_InvokeMethod.java:20_)
at
org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(_RunBeforeTestMethodCallbacks.java:74_)
at
org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(_RunAfterTestMethodCallbacks.java:82_)
at
org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(_SpringRepeat.java:72_)
at
org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(_SpringJUnit4ClassRunner.java:240_)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(_BlockJUnit4ClassRunner.java:47_)
at org.junit.runners.ParentRunner$3.run(_ParentRunner.java:231_)
at org.junit.runners.ParentRunner$1.schedule(_ParentRunner.java:60_)
My method for conversion:
*public**void*convertPDFtoTIFF(InputStream fis, ByteArrayOutputStream fos)
*throws*IOException {
Date t1 = *new*Date();
ImageOutputStream ios = *null*;
PDDocument pdfDoc = *null*;
*try*{
/LOG/.debug("convertPDFtoTIFF input size: "+ fis.available());
IIORegistry registry = IIORegistry./getDefaultInstance/();
registry.registerServiceProvider(*new*TIFFImageWriterSpi());
registry.registerServiceProvider(*new*TIFFImageReaderSpi());
TIFFImageWriterSpi tiffspi = *new*TIFFImageWriterSpi();
ImageWriter writer = tiffspi.createWriterInstance();
ImageWriteParam param = writer.getDefaultWriteParam();
param.setCompressionMode(ImageWriteParam./MODE_EXPLICIT/);
param.setCompressionType("LZW");
param.setCompressionQuality(0.3f);
ios = ImageIO./createImageOutputStream/(fos);
writer.setOutput(ios);
writer.prepareWriteSequence(*null*);
PDFParser parser = *new*PDFParser(fis);
parser.parse();
pdfDoc = parser.getPDDocument();
*int*pageNum = pdfDoc.getNumberOfPages();
BufferedImage images[] = *new*BufferedImage[pageNum];
PDFRenderer renderer = *new*PDFRenderer(pdfDoc);
*for*(*int*i = 0; i < pageNum; i++){
images[i] = renderer.renderImageWithDPI(i, /TIFF_RESOLUTION/);
writer.writeToSequence(*new*IIOImage(images[i], *null*, *null*), param);
}
Date t2 = *new*Date();
*long*diff = Math./abs/(t1.getTime() - t2.getTime());
/LOG/.debug("Total Pages: "+ pageNum);
/LOG/.debug("Total Conversion Time: "+ diff / 1000 + " sec");
}*catch*(Throwable t){
/LOG/.error("PDF Splitter Service failed to transform PDF to tiff");
*throw**new*IllegalArgumentException("PDF Splitter threw an exception
while processing the PDF ",t);
} *finally*{
*if*(pdfDoc != *null*) {
pdfDoc.close();
}
*if*(ios != *null*) {
ios.flush();
ios.close();
}
*if*(fos != *null*) {
fos.flush();
}
}
}
I cannot attach the PDF as it contains customer data but I am trying
to recreate this error with a different PDF.
I hope you can help me on this matter. This would be really great.
Thank you and kind regards,
Francesca
*Francesca Herpertz *| Technical Consultant iWorks| Professional
Services & Delivery iWorks | Insurance | SunGard |
Solmsstraße 18, 60486 Frankfurt am Main, Germany
Tel + 49 (0)69 70768 510 | Mob + 49 (0) 176 1111 0143
[email protected] <mailto:[email protected]>
www.sungard.com
<http://www.sungard.com/>www.sungard.com/iworksinsurance
<http://www.sungard.com/iworksinsurance>www.sungard.com/insurance/risk
<http://www.sungard.com/insurance/risk>
P*Think before you print
*CONFIDENTIALITY: This e-mail (including any attachments) may contain
confidential, proprietary and privileged information, and unauthorized
disclosure or use is prohibited. If you receive this e-mail in error,
please notify the sender and delete this e-mail from your system.
SunGard Systeme GmbH * Registered: Frankfurt am Main, Handelsregister
Frankfurt HRB 56839 * Geschäftsführer: Dean B. Gluyas, Christian U.
Haas, Henry Morton Miller Jr., Victoria E. Silbey
cid:[email protected]
cid:[email protected]