I was working on script for a Custom Listener (using Jira 7.3 and ScriptRunner 4.3) and noticed that following piece of code works:
def issueKey = "JIRA-1234"; def issueManager = ComponentAccessor.getIssueManager() def issueObject = issueManager.getIssueObject("JIRA-1234") def issueObjectID = issueObject.getId()
def issueObject = issueManager.getIssueObject("KEY-1234")
is being replaced by:
def issueObject = issueManager.getIssueObject(issueKey)
The code just assigns null to the issueObject variable and code returns following error:
java.lang.NullPointerException: Cannot invoke method getId() on null object
So in other words when the issue key is used directly as parameter for getIssueObject method - the code works. But when variable is used as a parameter - the code doesn't work.
Any idea why this is happening?
BTW, I have circumvented this problem using Search Provider (I share workaround in case somebody has similar problem and needs working solution):
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.jql.parser.JqlQueryParser import com.atlassian.jira.issue.search.SearchProvider import com.atlassian.jira.web.bean.PagerFilter def jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser); def searchProvider = ComponentAccessor.getComponent(SearchProvider); def authContext = ComponentAccessor.getJiraAuthenticationContext(); def issueKey = "JIRA-1234"; def jqlQuery = jqlQueryParser.parseQuery(issueKey); def user = authContext.getLoggedInUser(); def results = searchProvider.search(jqlQuery, user, PagerFilter.getUnlimitedFilter());
def issues = results.getIssues();
def issueObject = issues;
def issueObjectID = issueObject.getId();
Thanks in advance for clarifying this oddness for me!
Badges are a great way to show off community activity, whether you’re a newbie or a Champion.Learn more
...attest to the experience of an urgent approval that gets lost in the boss’s inbox and requires that special “Please Approve” email or text message. In an age where we have distributed teams...
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!
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