Hello,
I'm trying to clone an issue from project A to B with a Transition Issue trigger. But I got some error messages like:
Can not create issue in project/issue type
10012/10027
Any suggestions/solutions?
Thank you
Working Post Function:
import com.atlassian.jira.ComponentManager;
import com.atlassian.jira.project.Project;
import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.event.type.EventDispatchOption;
import com.atlassian.jira.user.ApplicationUser;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.IssueManager;
import com.atlassian.jira.issue.MutableIssue;
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.jira.security.roles.ProjectRole;
import com.atlassian.jira.security.roles.ProjectRoleActors;
import com.atlassian.jira.security.roles.ProjectRoleManager;
import com.atlassian.jira.security.JiraAuthenticationContext;
ComponentManager componentManager = ComponentManager.getInstance();
CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager();
ProjectRoleManager projectRoleManager = ComponentManager.getComponentInstanceOfType(ProjectRoleManager.class) as ProjectRoleManager;
ProjectRole ccRole = projectRoleManager.getProjectRole("Default Cc");
IssueManager issueManager = ComponentAccessor.getIssueManager()
def currentUser = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
MutableIssue issueToUpdate = (MutableIssue) issue;
CustomField customField_CC = customFieldManager.getCustomFieldObject(10400);
List<ApplicationUser> userList = new ArrayList<>();
for (ApplicationUser userKey : (List<ApplicationUser>) issue.getCustomFieldValue(customField_CC))
{
userList.add(userKey);
}
ProjectRoleActors actors = projectRoleManager.getProjectRoleActors(ccRole,issue.getProjectObject());
for (ApplicationUser userKey : actors.getUsers())
{
userList.add(userKey);
}
userList = userList.unique();
issue.setCustomFieldValue(customField_CC, userList);
issueManager.updateIssue(currentUser,issue,EventDispatchOption.ISSUE_UPDATED,false);
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
There's not a huge amount to do here really.
I think all you need is to drop the lines about getting the project and issue, as the current issue is available already.
So replace "MutableIssue issue = ... " because the object "issue" will already be the issue. But it is not a MutableIssue, so you'll need to cast it to use it later. e.g. MutableIssue myIssue - (MutableIssue) issue ;
Then the project -
Project project = projectManager.getProjectByCurrentKey("TEST")
ProjectRoleActors actors = projectRoleManager.getProjectRoleActors(ccRole, project)
Can become
ProjectRoleActors actors = projectRoleManager.getProjectRoleActors(ccRole, issue.getProjectObject() )
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.