Details
-
Bug
-
Resolution: Fixed
-
Low
Description
Using "Update issue field" to set values other then "None", breaks the post function.
Steps to Reproduce
- Create a fresh workflow.
- Go to any transition, and set a "Update Issue Field" post function to "None".
- Now set a "Update Issue Field" post function to "Fixed"
Expected Results
Both post functions would be visible on the workflow.
Actual Results
The "Resolution of the issue will be cleared" post function appears twice.
The below exception is thrown in the jira.log file:
2015-08-31 11:51:14.617381500 2015-08-31 11:51:14,617 ajp-nio-127.0.0.104-8009-exec-5 INFO sysadmin 711x6499x1 1slr7mp 201.22.212.136,104.192.140.177 /secure/admin/workflows/DeleteWorkflowTransitionPostFunction.jspa [c.a.jira.workflow.OSWorkflowManager] User 'sysadmin(sysadmin)' updated workflow 'Test' at 'Mon Aug 31 11:51:14 BRT 2015' 2015-08-31 11:51:31.481497500 2015-08-31 11:51:31,481 ajp-nio-127.0.0.104-8009-exec-11 INFO sysadmin 711x6515x1 1slr7mp 201.22.212.136,104.192.140.177 /secure/admin/workflows/AddWorkflowTransitionFunctionParams.jspa [c.a.jira.workflow.OSWorkflowManager] User 'sysadmin(sysadmin)' updated workflow 'Test' at 'Mon Aug 31 11:51:31 BRT 2015' 2015-08-31 11:51:31.800875500 2015-08-31 11:51:31,771 ajp-nio-127.0.0.104-8009-exec-6 ERROR sysadmin 711x6516x1 1slr7mp 201.22.212.136,104.192.140.177 /secure/admin/workflows/ViewWorkflowTransition.jspa [webwork.util.ValueStack] METHOD: "formatDescriptor", exception: 2015-08-31 11:51:31.800877500 java.lang.ClassCastException: com.atlassian.jira.issue.resolution.ResolutionImpl cannot be cast to org.ofbiz.core.entity.GenericValue 2015-08-31 11:51:31.800877500 at com.atlassian.jira.plugin.workflow.UpdateIssueFieldFunctionPluginFactory.getViewHtml(UpdateIssueFieldFunctionPluginFactory.java:192) 2015-08-31 11:51:31.800893500 at com.atlassian.jira.plugin.workflow.UpdateIssueFieldFunctionPluginFactory.getVelocityParamsForView(UpdateIssueFieldFunctionPluginFactory.java:111) 2015-08-31 11:51:31.800894500 at com.atlassian.jira.plugin.workflow.AbstractWorkflowPluginFactory.getVelocityParams(AbstractWorkflowPluginFactory.java:34) 2015-08-31 11:51:31.800894500 at com.atlassian.jira.plugin.workflow.WorkflowFunctionModuleDescriptor.getHtml(WorkflowFunctionModuleDescriptor.java:119) 2015-08-31 11:51:31.800896500 at com.atlassian.jira.web.bean.WorkflowDescriptorFormatBean.formatDescriptor(WorkflowDescriptorFormatBean.java:82) 2015-08-31 11:51:31.800899500 ... 2 filtered 2015-08-31 11:51:31.800899500 at java.lang.reflect.Method.invoke(Method.java:497) 2015-08-31 11:51:31.800899500 at webwork.util.InjectionUtils$DefaultInjectionImpl.invoke(InjectionUtils.java:70) 2015-08-31 11:51:31.800900500 at webwork.util.InjectionUtils.invoke(InjectionUtils.java:56) 2015-08-31 11:51:31.800900500 at webwork.util.ValueStack.findValue(ValueStack.java:517) 2015-08-31 11:51:31.800901500 at webwork.util.ValueStack.findValue(ValueStack.java:216) 2015-08-31 11:51:31.800902500 at webwork.view.taglib.WebWorkBodyTagSupport.findValue(WebWorkBodyTagSupport.java:62) 2015-08-31 11:51:31.800902500 at webwork.view.taglib.BasicPropertyTag.doStartTag(BasicPropertyTag.java:54)
Notes
- Creating only a post function to Clear the resolution works fine.
- Creating only a post function to Set resolution a value results in error.:
Type: class Class: com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction Arguments: field.name = resolution full.module.key = com.atlassian.jira.plugin.system.workflowupdate-issue-field-function field.value = 1
- If you have a validator under the same transition, creating the "Set Issue Field" post function duplicates the validator under Post Functions tab.
- The same applies to other fields, like assignee, priority and etc.
Workaround
Unfortunately there is no workaround then manually setting values to issue fields.