Issue Navigator displays an error when searching for certain issues
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
Symptoms
When you search the Issue Navigator, you get the message "An error occurred whilst rendering this message. Please contact the administrators, and inform them of this bug."
The following appears in the atlassian-jira.log
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2013-08-03 16:04:13,960 http-apr-8080-exec-5 ERROR admin 964x14x1 xxxxx 192.168.0.1 /issues/ [velocity] Exception in macro #issues at templates/jira/issue/table/issuetable-issue.vm[line 3, column 1]
2013-08-03 16:04:13,961 http-apr-8080-exec-5 ERROR admin 964x14x1 xxxxx 192.168.0.1 /issues/ [com.atlassian.velocity.DefaultVelocityManager] MethodInvocationException occurred getting message body from Velocity: java.lang.NullPointerException
java.lang.NullPointerException
at com.atlassian.jira.permission.PermissionContextImpl.getRelevantStepDescriptor(PermissionContextImpl.java:90)
at com.atlassian.jira.permission.WorkflowPermissionFactory.getWorkflowPermissions(WorkflowPermissionFactory.java:30)
at com.atlassian.jira.security.WorkflowBasedPermissionManager.hasPermission(WorkflowBasedPermissionManager.java:75)
at com.atlassian.jira.security.AbstractPermissionManager.hasPermission(AbstractPermissionManager.java:113)
at com.atlassian.jira.security.AbstractPermissionManager.hasPermission(AbstractPermissionManager.java:142) <+3>
at java.lang.reflect.Method.invoke(Unknown Source)
at com.atlassian.util.profiling.object.ObjectProfiler.profiledInvoke(ObjectProfiler.java:81)
at com.atlassian.jira.config.component.SwitchingInvocationHandler.invoke(SwitchingInvocationHandler.java:28)
at $Proxy80.hasPermission(Unknown Source)
....
at org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:381)
at com.atlassian.velocity.DefaultVelocityManager.getEncodedBody(DefaultVelocityManager.java:67)
at com.atlassian.jira.template.velocity.DefaultVelocityTemplatingEngine$DefaultRenderRequest.asHtml(DefaultVelocityTemplatingEngine.java:104)
at com.atlassian.jira.web.component.AbstractWebComponent.getHtml(AbstractWebComponent.java:35)
at com.atlassian.jira.web.component.IssueTableWebComponent$1.write(IssueTableWebComponent.java:149)
at com.atlassian.jira.web.component.IssueTableWebComponent.getHtml(IssueTableWebComponent.java:81)
at com.atlassian.jira.web.component.IssueTableWebComponent.getHtml(IssueTableWebComponent.java:47)
at com.atlassian.jira.bc.issue.table.DefaultIssueTableService.createIssueTable(DefaultIssueTableService.java:361)
at com.atlassian.jira.bc.issue.table.DefaultIssueTableService.getIssueTable(DefaultIssueTableService.java:262)
at com.atlassian.jira.bc.issue.table.DefaultIssueTableService.getIssueTableFromFilterWithJql(DefaultIssueTableService.java:183) <+3>
at java.lang.reflect.Method.invoke(Unknown Source)
at com.atlassian.multitenant.impl.MultiTenantComponentFactoryImpl$AbstractMultiTenantAwareInvocationHandler.invokeInternal(MultiTenantComponentFactoryImpl.java:181)
at com.atlassian.multitenant.impl.MultiTenantComponentFactoryImpl$MultiTenantAwareInvocationHandler.invoke(MultiTenantComponentFactoryImpl.java:211)
at $Proxy395.getIssueTableFromFilterWithJql(Unknown Source) <+3>
Cause
There's a workflow scheme which is associated to a non-existent workflow.
Diagnosis
In order to confirm that please execute the following SQL query (made in PostgreSQL)
1
select * from workflowschemeentity where workflow not in (select workflowname from jiraworkflows)
Resolution
Always back up your data before making any database modifications. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.
The workflow scheme should be updated manually with a valid workflow first via UI (if possible) else, it has to be modified in the database, as well as any entries associated to the invalid workflow at the changeitem and os_wfentry tables. The steps to perform this are as follows:
Shutdown JIRA
Run the update statements to change the non-existent workflow name to the valid workflow
Restart JIRA
Use the following update statements as an example of how it should look
1 2 3 4 5 6 7 8 9 10 11 12
UPDATE workflowschemeentity SET workflow = 'valid workflow' WHERE workflow = 'non-existent workflow'; UPDATE changeitem SET newstring = 'valid workflow' WHERE newstring = 'non-existent workflow'; UPDATE os_wfentry SET name = 'valid workflow' WHERE name = 'non-existent workflow';
Was this helpful?