Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 5.0.4
-
Fix Version/s: 6.2.4
-
Component/s: Core/Parsing
-
Labels:None
-
Environment:Windows Server 2008
-
Workaround Description:Set the system property -Dorg.icepdf.core.imageProxy=false
Description
Sometimes I see this stacktrace in javamelody:
ajp-apr-8009-exec-40
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:969)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:218)
java.util.concurrent.FutureTask.get(FutureTask.java:83)
org.icepdf.core.pobjects.graphics.ImageReference.createImage(ImageReference.java:107)
org.icepdf.core.pobjects.graphics.CachedImageReference.getImage(CachedImageReference.java:55)
org.icepdf.core.pobjects.graphics.ImageReference.drawImage(ImageReference.java:71)
org.icepdf.core.pobjects.graphics.commands.ImageDrawCmd.paintOperand(ImageDrawCmd.java:50)
org.icepdf.core.pobjects.graphics.Shapes.paint(Shapes.java:136)
org.icepdf.core.pobjects.Page.paintPageContent(Page.java:543)
org.icepdf.core.pobjects.Page.paint(Page.java:500)
org.icepdf.core.pobjects.Page.paint(Page.java:432)
org.icepdf.core.pobjects.Document.getPageImage(Document.java:1097)
What could be the problem? The code is:
byte[][] data = new byte[end - start + 1][];
try {
int index = 0;
for (int i = start - 1; i < end; i++) {
baous = new ByteArrayOutputStream();
image = (BufferedImage) document.getPageImage(
i, GraphicsRenderingHints.PRINT, Page.BOUNDARY_CROPBOX, 0, scale);
ImageIO.write(image, "png", baous);
data[index] = baous.toByteArray();
index++;
image.flush();
image = null;
baous.flush();
baous.close();
}
} finally {
document.dispose();
}
ajp-apr-8009-exec-40
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:969)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:218)
java.util.concurrent.FutureTask.get(FutureTask.java:83)
org.icepdf.core.pobjects.graphics.ImageReference.createImage(ImageReference.java:107)
org.icepdf.core.pobjects.graphics.CachedImageReference.getImage(CachedImageReference.java:55)
org.icepdf.core.pobjects.graphics.ImageReference.drawImage(ImageReference.java:71)
org.icepdf.core.pobjects.graphics.commands.ImageDrawCmd.paintOperand(ImageDrawCmd.java:50)
org.icepdf.core.pobjects.graphics.Shapes.paint(Shapes.java:136)
org.icepdf.core.pobjects.Page.paintPageContent(Page.java:543)
org.icepdf.core.pobjects.Page.paint(Page.java:500)
org.icepdf.core.pobjects.Page.paint(Page.java:432)
org.icepdf.core.pobjects.Document.getPageImage(Document.java:1097)
What could be the problem? The code is:
byte[][] data = new byte[end - start + 1][];
try {
int index = 0;
for (int i = start - 1; i < end; i++) {
baous = new ByteArrayOutputStream();
image = (BufferedImage) document.getPageImage(
i, GraphicsRenderingHints.PRINT, Page.BOUNDARY_CROPBOX, 0, scale);
ImageIO.write(image, "png", baous);
data[index] = baous.toByteArray();
index++;
image.flush();
image = null;
baous.flush();
baous.close();
}
} finally {
document.dispose();
}
Activity
Field | Original Value | New Value |
---|---|---|
Workaround Description | Set the system property -Dorg.icepdf.core.imageProxy=false |
Fix Version/s | 5.2 [ 10970 ] |
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Status | Resolved [ 5 ] | Closed [ 6 ] |
Resolution | Fixed [ 1 ] | |
Status | Closed [ 6 ] | Reopened [ 4 ] |
Fix Version/s | 6.1 [ 12070 ] | |
Fix Version/s | 6.0 [ 10970 ] |
Fix Version/s | 6.1.1 [ 12975 ] | |
Fix Version/s | 6.1 [ 12070 ] |
Fix Version/s | 6.2 [ 12974 ] | |
Fix Version/s | 6.1.1 [ 12975 ] |
Fix Version/s | 6.2.4 [ 13099 ] | |
Fix Version/s | 6.4 [ 12974 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #51495 | Tue May 09 14:08:36 MDT 2017 | patrick.corless | when loading image via the image proxy |
Files Changed | ||||
![]() ![]() ![]() ![]() ![]() |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #51496 | Tue May 09 14:09:41 MDT 2017 | patrick.corless | when loading image via the image proxy |
Files Changed | ||||
![]() |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #51497 | Tue May 09 14:10:18 MDT 2017 | patrick.corless | when loading image via the image proxy |
Files Changed | ||||
![]() ![]() ![]() ![]() ![]() |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #51500 | Tue May 09 14:40:41 MDT 2017 | patrick.corless | |
Files Changed | ||||
![]() |
Status | Reopened [ 4 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Status | Resolved [ 5 ] | Closed [ 6 ] |
Do you have a test file that shows this issue?