It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Getting "Cannot invoke method getCreated() on null object” : created scripted field for Last comment

I have created a scripted field to capture the last comment in a story- Last Comment

import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.comments.Comment
import com.atlassian.jira.issue.comments.CommentManager
import com.atlassian.jira.component.ComponentAccessor

def commentManager = ComponentAccessor.getCommentManager()
def comment = commentManager.getLastComment (issue)
def date = comment.getCreated()
if(comment!=null)

{ return ((date as String) + " " + comment.body + " Author: " + comment.authorFullName) }

return "null";

I am getting below error
2018-02-07 01:05:35,694 ERROR [customfield.GroovyCustomField]: *************************************************************************************
Script field failed on issue: SPD-****, field: Last Comment
java.lang.NullPointerException: Cannot invoke method getCreated() on null object
at Script140613.run(Script140613.groovy:9)

I am not a engineer ,so please help me with the code.How do i fix this NPE.
BTW the template I have used in Text field Multiline and Free Text Searcher
Please help !!

1 answer

1 accepted

0 votes
Answer accepted

Hi @Nilanjana Misra

The problem with your script is that in line number 8 "issue" is null (not defined). This is why you get the error.

Make sure you are passing the issue correctly.

Hope this helps

I've tried something like this and get the result:

import com.atlassian.jira.ComponentAccessor
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.comments.Comment
import com.atlassian.jira.issue.comments.CommentManager
import com.atlassian.jira.component.ComponentAccessor

def issueManager = ComponentAccessor.getIssueManager()
def issue = issueManager.getIssueObject("XXXXX")


def commentManager = ComponentAccessor.getCommentManager()
def comment = commentManager.getLastComment(issue)
def date = comment.getCreated()
if(comment!=null)
{ return ((date as String) + " " + comment.body + " Author: " + comment.authorFullName) }

return "null";

Yes , you are right .I got it working now.Thank you

I am having this same issue.  @Charlie [DEISER] do I put that code in the field as is or am I supposed to replace the "XXXXX" with something?

You should use an existing issue number ex. ISS-3548

Suggest an answer

Log in or Sign up to answer
TAGS

Community Events

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

Find an event

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

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you