java.lang.IndexOutOfBoundsException

Apereo Issues | James Wennmacher | 4 years ago
  1. 0

    Had an error where on IMAPS clicking on a message generated an exception. Instead of the user being informed of the error they had a perpetual spinning globe. Services should catch the runtime error and return appropriate response to client. In this case (clicking on a message in preview list display) client got an HTTP 200 back with an empty result. Should return an error message. See stack trace below. In general the error handling should be improved to never have perpetual spinning globe and when possible return relevant info to the user (though arguably other than auth failures it should always be a transient error). Suggestions (not fully baked - review for improvements): 1. Catch run-time errors in Ajax Controllers and return response with error message indicating service is down. Catch EmailPreviewExceptions in Ajax controllers and return message from exception text. Would need to review EmailPreviewExceptions and possibly separate auth from other? a) For non-ajax controllers going to an error page should be fine. 2. Change UI so it doesn't display all errors as a 504 error ERROR [uP-PortletExec-2-admin-RESOURCE-[IMAPemail-preview]] controller.EmailMessageController.[] Mar/28 14:33:12 - Error encountered while attempting to retrieve message java.lang.IndexOutOfBoundsException at com.sun.mail.imap.IMAPFolder.checkRange(IMAPFolder.java:449) at com.sun.mail.imap.IMAPFolder.getMessage(IMAPFolder.java:1378) at org.jasig.portlet.emailpreview.dao.javamail.JavamailAccountService.getMessage(JavamailAccountService.java:154)

    Apereo Issues | 4 years ago | James Wennmacher
    java.lang.IndexOutOfBoundsException
  2. 0

    Had an error where on IMAPS clicking on a message generated an exception. Instead of the user being informed of the error they had a perpetual spinning globe. Services should catch the runtime error and return appropriate response to client. In this case (clicking on a message in preview list display) client got an HTTP 200 back with an empty result. Should return an error message. See stack trace below. In general the error handling should be improved to never have perpetual spinning globe and when possible return relevant info to the user (though arguably other than auth failures it should always be a transient error). Suggestions (not fully baked - review for improvements): 1. Catch run-time errors in Ajax Controllers and return response with error message indicating service is down. Catch EmailPreviewExceptions in Ajax controllers and return message from exception text. Would need to review EmailPreviewExceptions and possibly separate auth from other? a) For non-ajax controllers going to an error page should be fine. 2. Change UI so it doesn't display all errors as a 504 error ERROR [uP-PortletExec-2-admin-RESOURCE-[IMAPemail-preview]] controller.EmailMessageController.[] Mar/28 14:33:12 - Error encountered while attempting to retrieve message java.lang.IndexOutOfBoundsException at com.sun.mail.imap.IMAPFolder.checkRange(IMAPFolder.java:449) at com.sun.mail.imap.IMAPFolder.getMessage(IMAPFolder.java:1378) at org.jasig.portlet.emailpreview.dao.javamail.JavamailAccountService.getMessage(JavamailAccountService.java:154)

    Apereo Issues | 4 years ago | James Wennmacher
    java.lang.IndexOutOfBoundsException
  3. 0

    android app: Gmail cause app to crash after login

    Stack Overflow | 4 years ago | user2056947
    java.lang.RuntimeException: An error occured while executing doInBackground()
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    IndexOutOfBoundsException on folder.getMessages()

    Oracle Community | 7 years ago | 843834
    java.lang.IndexOutOfBoundsException: 17 > 16

    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

      No message provided

      at com.sun.mail.imap.IMAPFolder.checkRange()
    2. JavaMail API (compat)
      IMAPFolder.getMessage
      1. com.sun.mail.imap.IMAPFolder.checkRange(IMAPFolder.java:449)
      2. com.sun.mail.imap.IMAPFolder.getMessage(IMAPFolder.java:1378)
      2 frames
    3. org.jasig.portlet
      JavamailAccountService.getMessage
      1. org.jasig.portlet.emailpreview.dao.javamail.JavamailAccountService.getMessage(JavamailAccountService.java:154)
      1 frame