Adding a field to a Screen tab throws java.lang.IndexOutOfBoundsException
Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.
Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
Problem
An error is thrown in JIRA UI when trying to add a field to a Screen tab.
The JIRA Server was contacted but has returned an error response. We are unsure of the result of this operation.
The following appears in the atlassian-jira.log
1
2
3
4
5
6
7
8
9
10
11
2018-03-19 06:32:34,156 http-nio-18080-exec-22 ERROR USER 392x329039x5 USERA 10.207.101.159 /rest/api/2/screens/2/tabs/31307/fields [c.a.j.rest.exception.ExceptionInterceptor] Returning internal server error in response
java.lang.reflect.InvocationTargetException
.......
Caused by: java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at com.atlassian.jira.issue.fields.screen.FieldScreenImpl.getTab(FieldScreenImpl.java:87)
at com.atlassian.jira.action.screen.AddFieldToScreenUtilImpl.getTab(AddFieldToScreenUtilImpl.java:114)
at com.atlassian.jira.action.screen.AddFieldToScreenUtilImpl.validate(AddFieldToScreenUtilImpl.java:49)
at com.atlassian.jira.rest.v2.issue.ScreensResource.addField(ScreensResource.java:415)
... 267 more
Diagnosis
Gathering the below SQL result might provide further insights into what happened.
1
SELECT * FROM fieldscreentab INNER JOIN fieldscreen ON (fieldscreentab.FIELDSCREEN = fieldscreen.ID) WHERE fieldscreen.NAME = '<AffectedScreen>';
ℹ️ Replace <AffectedField> with the correct affected field name.
It appears that the ArrayList return was missing the Tab for the affected Screen in which the user tries to add a field into.
There were duplicate sequence value in SEQUENCE column of fieldscreentab table.
Cause
The cause is unclear at this point to why the Tab of the affected Screen is missing from the list.
Solution
Workarounds
Workaround A:
Create a new tab
Add a field to this new tab
Drag and drop the field from new tab to the affected tab
This should resolve the error, adding new fields to the affected tab after doing the above will work.
Workaround B:
In some cases simply creating a new tab might resolve the issue
Was this helpful?