Hey there,
im trying to create a new Issue in Groovy Script (i want to make a copy, which is inside another project as the source. Moving an Issue would be awesome but i guess this is way harder)
import com.atlassian.jira.event.issue.IssueEventManager import com.atlassian.jira.event.type.EventDispatchOption import com.atlassian.jira.issue.CustomFieldManager import com.atlassian.jira.issue.IssueManager import com.atlassian.jira.issue.MutableIssue import com.atlassian.jira.issue.fields.CustomField import com.atlassian.jira.project.Project import com.atlassian.jira.user.ApplicationUser import com.atlassian.jira.user.util.UserManager import com.atlassian.jira.issue.Issue import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.fields.config.manager.IssueTypeSchemeManager; import com.atlassian.jira.issue.issuetype.IssueType IssueManager issueManager = ComponentAccessor.getIssueManager() Issue issue = issueManager.getIssueByKeyIgnoreCase("TEST-1") ApplicationUser reporter = issue.getReporter(); IssueTypeSchemeManager issueTypeSchemeManager = ComponentAccessor.getIssueTypeSchemeManager() Project project = ComponentAccessor.getProjectManager().getProjectObjByKey("P2") IssueType issueType = issueTypeSchemeManager.getDefaultIssueType(project); CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager() CustomField senderName = customFieldManager.getCustomFieldObjectByName("E-Mail Absendername") String senderNameString = (String) issue.getCustomFieldValue(senderName) MutableIssue newIssue = ComponentAccessor.getIssueFactory().getIssue() newIssue.setProjectId(project.getId()) newIssue.setDescription(issue.getDescription()); newIssue.setSummary(issue.getSummary()) newIssue.setIssueType(issueType) if (senderNameString != null) { newIssue.setCustomFieldValue(senderName, senderNameString) } issueManager.updateIssue(reporter, newIssue, EventDispatchOption.DO_NOT_DISPATCH, false)
I get
Script console script failed: java.lang.NullPointerException at com.atlassian.jira.issue.util.DefaultIssueUpdater.doUpdate(DefaultIssueUpdater.java:44) at com.atlassian.jira.issue.managers.DefaultIssueManager.doUpdate(DefaultIssueManager.java:691) at com.atlassian.jira.issue.managers.DefaultIssueManager.updateIssue(DefaultIssueManager.java:675) at com.atlassian.jira.issue.managers.DefaultIssueManager.updateIssue(DefaultIssueManager.java:655) at com.atlassian.jira.issue.IssueManager$updateIssue$0.call(Unknown Source) at Script33.run(Script33.groovy:42)
in Script Runner.
Did i forget a mandatory field?
Community moderators have prevented the ability to post new answers.
You are calling updateIssue() with a newly create Issue instance - this will not work.
You should be using the IssueService instead - validateCreate() and create() methods. See some documentation here.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.