Attempting to set Epic Link yields "unable to cast string to issue" Edited

I'm attempting to create issues that are associated with a specific Epic. I've created a custom field, created an action associated with that custom field, and am able to successfully create issues within the action. What I'm not able to do is SET Epic Link for the issues that I'm creating.

Code looks like this (I've left commented alternative methods that also don't work in there):

string[] custom_fields_mapping;
custom_fields_mapping = addElement(custom_fields_mapping, "assignee");
custom_fields_mapping = addElement(custom_fields_mapping, currentUser());
// custom_fields_mapping = addElement(custom_fields_mapping, "Epic Link");
// custom_fields_mapping = addElement(custom_fields_mapping, key);

string k = createIssue(
"T1", // project
"", // parent task key (blank for non sub-tasks)
"Task", // issueType
"Epic Security Review" , // summary
"Medium", // priority name
"", // description
{}, // array of components
"", // due date
"1h 30m", // estimate duration
"", // security level
// {} // array of custom or system field values
custom_fields_mapping // array of custom or system field values
);

if(isNotNull(key))
logPrint("ERROR", "key = " + key);
else
logPrint("ERROR", "key is null!");

%k%.#{Epic Link} = key;

Passing the key in the custom_fields_mapping causes the createIssue to fail. If instead I createIssue without the custom_feild_mapping, and then attempt to update the recently created issue with something like %k%.#{Epic Link} fails the update with an error. Here's some log output from a recent attempt... as you can see the key value is a valid key (non-null):

2017-11-02 13:59:37,672 pool-26-thread-8 ERROR admin 839x801x1 a9k9vr 64.134.140.43 /rest/keplerrominfo/blitzactions/latest/input/executeAction [c.k.s.lang.routines.LogPrintRoutine] key = TT-3

2017-11-02 13:59:37,679 pool-26-thread-8 ERROR admin 839x801x1 a9k9vr 64.134.140.43 /rest/keplerrominfo/blitzactions/latest/input/executeAction [c.k.j.c.hostapp.impl.KIssueServiceImpl] Update failed for issue >>T1-42<<, error was java.lang.ClassCastException: java.lang.String cannot be cast to com.atlassian.jira.issue.Issue

 

Work is being done using Jira 7.5.1, Power Actions 4.1.1

This feels similar to this existing question, which was not satisfactorily answered.

1 answer

This widget could not be displayed.

Hi there, Christian.

"Epic Link" isn't a field that Power Scripts / Power Actions understands how to handle natively (at least by referencing the field name).

One way I've gotten around this is to find the custom field ID of "Epic Link" and then make that map in the sil.aliases file.

For example (in sil.aliases)

epicLink = customfield_12345

Then instead of referencing the field as "Epic Link" in your script, you'd reference it as epicLink.

Hope this helps!

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Aug 22, 2018 in Marketplace Apps

How a Marketplace app tech team is achieving gender diversity

Hello! My name is Genevieve Blanch, and I'm the Marketing Manager at RefinedWiki, creators of apps to give teams the tools to customize Atlassian platforms. Currently, 44% of the tech team at Re...

435 views 3 17
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you