java.lang.IndexOutOfBoundsException: Index: 15, Size: 15

ICEsoft JIRA Issue Tracker | Pouya Yanki | 1 year ago
tip
Do you find the tips below useful? Click on the to mark them and say thanks to rafael . Or join the community to write better ones.
  1. 0

    In our application, we work a lot with annotations to highlight the most important parts of the PDF for our user. The IcePDF viewer tries to paint the annotations when the PDF page is first loaded in the {{PageViewComponentImpl.paintAnnotations()}}. There is a {{for}} loop in this method, which can not properly deal with concurrency and leads to the following exception. This exception sometimes leads to the freezing of the entire IcePdf component and our application. Note that our application performs all the GUI operations related to ICEPDF inside a {{SwingUtilities.invokeLater()}} to make sure it can only be performed withing the {{AWT}} thread. However, the it is still possible that an annotation is removed before the loop in the {{paintAnnotations()}} method is finished. {quote} Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index: 15, Size: 15 at java.util.ArrayList.rangeCheck(ArrayList.java:635) at java.util.ArrayList.get(ArrayList.java:411) at org.icepdf.ri.common.views.PageViewComponentImpl.paintAnnotations(PageViewComponentImpl.java:524) at org.icepdf.ri.common.views.PageViewComponentImpl.paintComponent(PageViewComponentImpl.java:463) at javax.swing.JComponent.paint(JComponent.java:1054) at javax.swing.JLayeredPane.paint(JLayeredPane.java:585) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at org.icepdf.ri.common.views.PageViewDecorator.paint(PageViewDecorator.java:141) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5219) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452) at javax.swing.RepaintManager.paint(RepaintManager.java:1249) at javax.swing.JComponent._paintImmediately(JComponent.java:5167) at javax.swing.JComponent.paintImmediately(JComponent.java:4978) at javax.swing.RepaintManager$3.run(RepaintManager.java:808) at javax.swing.RepaintManager$3.run(RepaintManager.java:796) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718) at javax.swing.RepaintManager.access$1100(RepaintManager.java:62) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733) at java.awt.EventQueue.access$200(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:694) at java.awt.EventQueue$3.run(EventQueue.java:692) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:703) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91) {quote}

    ICEsoft JIRA Issue Tracker | 1 year ago | Pouya Yanki
    java.lang.IndexOutOfBoundsException: Index: 15, Size: 15
  2. 0

    In our application, we work a lot with annotations to highlight the most important parts of the PDF for our user. The IcePDF viewer tries to paint the annotations when the PDF page is first loaded in the {{PageViewComponentImpl.paintAnnotations()}}. There is a {{for}} loop in this method, which can not properly deal with concurrency and leads to the following exception. This exception sometimes leads to the freezing of the entire IcePdf component and our application. Note that our application performs all the GUI operations related to ICEPDF inside a {{SwingUtilities.invokeLater()}} to make sure it can only be performed withing the {{AWT}} thread. However, the it is still possible that an annotation is removed before the loop in the {{paintAnnotations()}} method is finished. {quote} Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index: 15, Size: 15 at java.util.ArrayList.rangeCheck(ArrayList.java:635) at java.util.ArrayList.get(ArrayList.java:411) at org.icepdf.ri.common.views.PageViewComponentImpl.paintAnnotations(PageViewComponentImpl.java:524) at org.icepdf.ri.common.views.PageViewComponentImpl.paintComponent(PageViewComponentImpl.java:463) at javax.swing.JComponent.paint(JComponent.java:1054) at javax.swing.JLayeredPane.paint(JLayeredPane.java:585) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at org.icepdf.ri.common.views.PageViewDecorator.paint(PageViewDecorator.java:141) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5219) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452) at javax.swing.RepaintManager.paint(RepaintManager.java:1249) at javax.swing.JComponent._paintImmediately(JComponent.java:5167) at javax.swing.JComponent.paintImmediately(JComponent.java:4978) at javax.swing.RepaintManager$3.run(RepaintManager.java:808) at javax.swing.RepaintManager$3.run(RepaintManager.java:796) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718) at javax.swing.RepaintManager.access$1100(RepaintManager.java:62) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733) at java.awt.EventQueue.access$200(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:694) at java.awt.EventQueue$3.run(EventQueue.java:692) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:703) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91) {quote}

    ICEsoft JIRA Issue Tracker | 1 year ago | Pouya Yanki
    java.lang.IndexOutOfBoundsException: Index: 15, Size: 15
  3. 0
    samebug tip
    Thrown to indicate that an index of some sort (such as to an array, to a string, or to a vector) is out of range. Applications can subclass this class to indicate similar exceptions.
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Strange outOfBoundsException when iterating through lists

    Stack Overflow | 3 years ago | José Casillas
    java.lang.IndexOutOfBoundsException: Index: 15, Size: 15

  1. Indri Yunita 4 times, last 2 weeks ago
  2. filpgame 4 times, last 2 weeks ago
  3. tyson925 3 times, last 3 weeks ago
  4. justCodeit 1 times, last 3 weeks ago
  5. Pilleo 3 times, last 4 weeks ago
69 more registered users
26 unregistered visitors
Not finding the right solution?
Take a tour to get the most out of Samebug.

Tired of useless tips?

Automated exception search integrated into your IDE

Root Cause Analysis

  1. java.lang.IndexOutOfBoundsException

    Index: 15, Size: 15

    at java.util.ArrayList.rangeCheck()
  2. Java RT
    ArrayList.get
    1. java.util.ArrayList.rangeCheck(ArrayList.java:635)
    2. java.util.ArrayList.get(ArrayList.java:411)
    2 frames
  3. org.icepdf.ri
    PageViewComponentImpl.paintComponent
    1. org.icepdf.ri.common.views.PageViewComponentImpl.paintAnnotations(PageViewComponentImpl.java:524)
    2. org.icepdf.ri.common.views.PageViewComponentImpl.paintComponent(PageViewComponentImpl.java:463)
    2 frames
  4. Java RT
    JComponent.paint
    1. javax.swing.JComponent.paint(JComponent.java:1054)
    2. javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
    3. javax.swing.JComponent.paintChildren(JComponent.java:887)
    4. javax.swing.JComponent.paint(JComponent.java:1063)
    4 frames
  5. org.icepdf.ri
    PageViewDecorator.paint
    1. org.icepdf.ri.common.views.PageViewDecorator.paint(PageViewDecorator.java:141)
    1 frame
  6. Java RT
    EventDispatchThread.run
    1. javax.swing.JComponent.paintChildren(JComponent.java:887)
    2. javax.swing.JComponent.paint(JComponent.java:1063)
    3. javax.swing.JComponent.paintToOffscreen(JComponent.java:5219)
    4. javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529)
    5. javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452)
    6. javax.swing.RepaintManager.paint(RepaintManager.java:1249)
    7. javax.swing.JComponent._paintImmediately(JComponent.java:5167)
    8. javax.swing.JComponent.paintImmediately(JComponent.java:4978)
    9. javax.swing.RepaintManager$3.run(RepaintManager.java:808)
    10. javax.swing.RepaintManager$3.run(RepaintManager.java:796)
    11. java.security.AccessController.doPrivileged(Native Method)
    12. java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    13. javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
    14. javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769)
    15. javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718)
    16. javax.swing.RepaintManager.access$1100(RepaintManager.java:62)
    17. javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677)
    18. java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    19. java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
    20. java.awt.EventQueue.access$200(EventQueue.java:103)
    21. java.awt.EventQueue$3.run(EventQueue.java:694)
    22. java.awt.EventQueue$3.run(EventQueue.java:692)
    23. java.security.AccessController.doPrivileged(Native Method)
    24. java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    25. java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
    26. java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    27. java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    28. java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    29. java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    30. java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    31. java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
    31 frames