Attempting to make fields optional in field configurations results in a blank page instead
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
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.
*Fisheye および Crucible は除く
要約
Making changes to Jira field configurations, such as changing required fields to optional, is not working as expected and results in a blank page instead.
環境
Jira 8 以降
診断
The following error can be observed in atlassian-jira.log
https-jsse-nio-8443-exec-11 url: /secure/admin/ConfigureFieldLayout!default.jspa, /secure/admin/views/issuefields/configurefieldlayout.jsp; user: admin ERROR admin 2143x23345x2 4xsedtfs 127.0.0.1 /secure/admin/ConfigureFieldLayout!default.jspa [webwork.util.ValueStack] METHOD: "fieldLocked", exception:
java.lang.IllegalArgumentException: No enum constant com.atlassian.jira.config.managedconfiguration.ConfigurationItemAccessLevel.
at java.lang.Enum.valueOf(Enum.java:238)
at com.atlassian.jira.config.managedconfiguration.ConfigurationItemAccessLevel.valueOf(ConfigurationItemAccessLevel.java:15)
at com.atlassian.jira.config.managedconfiguration.DefaultManagedConfigurationItemStore.fromGV(DefaultManagedConfigurationItemStore.java:123)
at com.atlassian.jira.config.managedconfiguration.DefaultManagedConfigurationItemStore.lambda$getManagedConfigurationItems$0(DefaultManagedConfigurationItemStore.java:98)
at com.atlassian.jira.util.collect.TransformingIterator.next(TransformingIterator.java:34)
at com.atlassian.jira.util.collect.CollectionUtil.foreach(CollectionUtil.java:39)
at com.atlassian.jira.util.collect.CollectionUtil.toList(CollectionUtil.java:65)
at com.atlassian.jira.util.collect.CollectionUtil.transform(CollectionUtil.java:127)
at com.atlassian.jira.util.collect.CollectionUtil.transform(CollectionUtil.java:148)
at com.atlassian.jira.config.managedconfiguration.DefaultManagedConfigurationItemStore.getManagedConfigurationItems(DefaultManagedConfigurationItemStore.java:98)
at com.atlassian.jira.config.managedconfiguration.DefaultManagedConfigurationItemService.getManagedConfigurationItems(DefaultManagedConfigurationItemService.java:70)
at com.atlassian.jira.web.action.admin.issuefields.AbstractConfigureFieldLayout.getManagedCustomFieldsMap(AbstractConfigureFieldLayout.java:288)
at com.atlassian.jira.web.action.admin.issuefields.AbstractConfigureFieldLayout.isFieldLocked(AbstractConfigureFieldLayout.java:268)
... 3 filtered
原因
There's 1 or more invalid rows in the managedconfigurationitem table such as the last 2 rows depicted below:
id item_id item_type managed access_level source description_key
10600 customfield_14600 CUSTOM_FIELD true LOCKED com.atlassian.teams:field-locking-service admin.managed.configuration.items.generic.description.locked
10001 customfield_10001 CUSTOM_FIELD true LOCKED com.atlassian.servicedesk:field-locking-service sd.origin.customfield.locked.desc
10100 customfield_10100 CUSTOM_FIELD true LOCKED com.atlassian.servicedesk:field-locking-service admin.managed.configuration.items.generic.description.locked
10101 customfield_10101 CUSTOM_FIELD true LOCKED com.atlassian.servicedesk:field-locking-service admin.managed.configuration.items.generic.description.locked
10102 customfield_10102 CUSTOM_FIELD true LOCKED com.atlassian.servicedesk.approvals-plugin:field-locking-service admin.managed.configuration.items.generic.description.locked
10000 customfield_10000 CUSTOM_FIELD false com.atlassian.servicedesk:field-locking-service admin.managed.configuration.items.generic.description.locked
10002 customfield_10002 CUSTOM_FIELD false com.atlassian.servicedesk:field-locking-service admin.managed.configuration.items.generic.description.locked
ソリューション
Restart Jira. There's a startup task the checks for these rows and corrects them. Unless directed by Atlassian Support one should never modify rows in this manner.