Workflows Does Not Show Transitions After JIRA Upgrade
Symptoms
After upgrade to JIRA 5.0+ from earlier versions the transitions buttons will not appear when you view an issue. This is applicable for issues which are having one of the pre-conditions set for 'User in Group' condition (from the plugin JIRA Misc Workflow Extensions)
The following appears in the atlassian-jira.log
:
java.lang.NoClassDefFoundError: com/opensymphony/user/EntityNotFoundException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getDeclaredConstructors(Unknown Source)
at org.picocontainer.defaults.ConstructorInjectionComponentAdapter.getSortedMatchingConstructors(ConstructorInjectionComponentAdapter.java:229)
at org.picocontainer.defaults.ConstructorInjectionComponentAdapter.getGreediestSatisifableConstructor(ConstructorInjectionComponentAdapter.java:76)
at org.picocontainer.defaults.ConstructorInjectionComponentAdapter.instantiateComponent(ConstructorInjectionComponentAdapter.java:193)
at org.picocontainer.defaults.InstantiatingComponentAdapter.getComponentInstance(InstantiatingComponentAdapter.java:48)
at org.picocontainer.defaults.DecoratingComponentAdapter.getComponentInstance(DecoratingComponentAdapter.java:42)
at org.picocontainer.defaults.SynchronizedComponentAdapter.getComponentInstance(SynchronizedComponentAdapter.java:35)
at org.picocontainer.defaults.DecoratingComponentAdapter.getComponentInstance(DecoratingComponentAdapter.java:42)
at com.atlassian.jira.config.component.ProfilingComponentAdapter.getComponentInstance(ProfilingComponentAdapter.java:45)
at org.picocontainer.defaults.DefaultPicoContainer.getComponentInstance(DefaultPicoContainer.java:298)
at com.atlassian.jira.util.JiraUtils.loadComponent(JiraUtils.java:113)
at com.atlassian.jira.util.JiraUtils.loadComponent(JiraUtils.java:91)
at com.atlassian.jira.workflow.DefaultOSWorkflowConfigurator$LegacyJiraTypeResolver.loadObject(DefaultOSWorkflowConfigurator.java:168)
at com.opensymphony.workflow.TypeResolver.getCondition(TypeResolver.java:73)
at com.atlassian.jira.workflow.DefaultOSWorkflowConfigurator$JiraTypeResolverDelegator.getCondition(DefaultOSWorkflowConfigurator.java:115) <+3>
at java.lang.reflect.Method.invoke(Unknown Source)
Diagnosis
The workflow transition buttons will not be displayed while viewing the issue even though the user has the required permissions to perform the transitions.
Cause
From JIRA 5.0+ onwards the internal classes that are used for user/group management is changed and the workflow will internally use these class names. This causes JIRA to throw an exception while processing the workflow XML.
Resolution
- Edit the workflow which is having this issue
Locate the transitions that are having this pre-condition set and delete and re-add the pre-condition.
Note that you need to be a JIRA administrator to update the workflow transitions.