In ScriptRunner for JIRA: Cannot find method getFieldByName

dralexk April 26, 2017

Hi,

I am trying to follow an example from the ScriptRunner's manual ("Select Lists with Other") and get a field object:

def componentField = getFieldByName("product_component")

I paste it to the script console and immediately get an error, "Cannot find matching method".

Shall I import some library?

I added the following imports:

import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.IssueManager
import com.atlassian.jira.issue.CustomFieldManager 
import com.atlassian.jira.issue.fields.CustomField

def componentField = getFieldByName("product_component")

but it did not help.

Please assist.

Thanks,

Alex

 

 

1 answer

1 vote
adammarkham
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 27, 2017

You can only use getFieldByName and the various other methods in the documentation in that section with the behaviours functionality.

If you need to get a custom field from the Script Console you should use:

import com.atlassian.jira.component.ComponentAccessor

def customFieldManager = ComponentAccessor.getCustomFieldManager()
def issueManager = ComponentAccessor.getIssueManager()

def issueKey = "TEST-1"
def issue = issueManager.getIssueObject(issueKey)

def productCf = customFieldManager.getCustomFieldObjectByName("product_component")

def productValue = issue.getCustomFieldValue(productCf)

Hope this helps.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events