Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,456,348
Community Members
 
Community Events
176
Community Groups

Cannot invoke method getName() on null object in Validator

I am trying to create issue B from issue A using button menu "Create linked issue" in Validators of Create transition:

 

import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.user.util.UserManager
import com.atlassian.jira.issue.IssueManager
import org.apache.log4j.Logger
import org.apache.log4j.Level
import com.atlassian.jira.issue.IssueInputParameters
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.event.type.EventDispatchOption;
import com.opensymphony.workflow.loader.ActionDescriptor
import com.opensymphony.workflow.loader.StepDescriptor
import com.atlassian.jira.bc.issue.IssueService
import com.atlassian.jira.issue.IssueInputParametersImpl
import com.atlassian.jira.workflow.TransitionOptions

def log = Logger.getLogger("com.acme.CreateSubtask")
log.setLevel(Level.DEBUG)


log.info('1. Test')
def isEpicIssueClosed = false;
log.info('2. isEpicIssueClosed BEFORE: ' + isEpicIssueClosed)
log.info('3. The creacted issue is: ' + issue + '. Its status is '+ issue.getStatus().name)

if(issue.getStatus().name == 'Closed') {
isEpicIssueClosed = true;
}

log.info('4. isEpicIssueClosed AFTER: ' + isEpicIssueClosed)
isEpicIssueClosed == false

But I see the following error: 

2018-08-02 18:11:06,513 INFO [acme.CreateSubtask]: 1. Test
2018-08-02 18:11:06,515 INFO [acme.CreateSubtask]: 2. isEpicIssueClosed BEFORE: false
2018-08-02 18:11:06,515 INFO [acme.CreateSubtask]: 3. The creacted issue is: Test of improvement
2018-08-02 18:11:06,517 ERROR [utils.ConditionUtils]: *************************************************************************************
2018-08-02 18:11:06,517 ERROR [utils.ConditionUtils]: Condition failed on issue: null, built-in script:com.onresolve.scriptrunner.canned.jira.workflow.validators.SimpleScriptedValidator
java.lang.NullPointerException: Cannot invoke method getName() on null object
at Script2802.run(Script2802.groovy:28)

 

Guys, what am I doing wrong?

This code works perfectly in other post-functions:

if(issue.getStatus().name == 'Closed') { 

 

1 answer

1 accepted

1 vote
Answer accepted

Hello @zaharovvv_suek_ru
This is happens because issue does not have status yet

Status sets in postfunction section and validators executes earlier.

So you cannot check status before issue will be created

Hi @Mark Markov , 

I have written a script fragment and I am checking for the issue type in condition section. But, It throws an error saying Cannot invoke method getName() on null object. 

2019-05-10 04:44:34,465 http-nio-8080-exec-76 ERROR anonymous 284x1351975x68 lhqo48 172.28.122.240 /login.jsp [c.o.scriptrunner.fragments.JiraScriptCondition] Script condition failed: java.lang.NullPointerException: Cannot invoke method getName() on null object

 Note: This is happening whenever the user login and logout. 

Can you please take a look. This is how i am checking in condition section. 

issue.issueTypeObject.name == 'FEATURE'

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events