I am writing a post function to create a subtask based on components
below is the code
def customFieldManager = ComponentAccessor.getCustomFieldManager()
SubTaskManager subTaskManager = ComponentAccessor.getSubTaskManager()
ApplicationUser user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
IssueFactory issueFactory = ComponentAccessor.getIssueFactory()
def constantManager = ComponentAccessor.getConstantsManager()
def issueManager = ComponentAccessor.getIssueManager()
def issue = issue
def parent_issue = issue.getParentObject()
def projectComponentManager = ComponentAccessor.getProjectComponentManager()
def componentFRIproduct = projectComponentManager.findByComponentName(issue.getProjectObject().getId(), "comp1")
MutableIssue newSubTask = issueFactory.getIssue()
newSubTask.setParentObject(parent_issue)
newSubTask.setProjectObject(parent_issue.getProjectObject())
newSubTask.setIssueTypeId(constantManager.getAllIssueTypeObjects().find{
it.getName() == "Analysis"
}.id)
newSubTask.setComponent(componentFRIproduct);
Map<String,Object> newIssueParams = ["issue" : newSubTask] as Map<String,Object>
issueManager.createIssueObject(user, newIssueParams)
subTaskManager.createSubTaskIssueLink(parent_issue, newSubTask, user)
but i am getting below error
java.lang.StackOverflowError
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManagerImpl.toStringWithClassInfo(DiagnosticsManagerImpl.groovy:151)
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManagerImpl$_convertToPayload_closure5$_closure8.doCall(DiagnosticsManagerImpl.groovy:175)
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManagerImpl$_convertToPayload_closure5.doCall(DiagnosticsManagerImpl.groovy:174)
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManagerImpl.convertToPayload(DiagnosticsManagerImpl.groovy:169)
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManagerImpl$convertToPayload.callStatic(Unknown Source)
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManagerImpl.recordSnapshot(DiagnosticsManagerImpl.groovy:143)
at com.onresolve.scriptrunner.runner.diag.DiagnosticsManager$recordSnapshot$0.call(Unknown Source)
at com.onresolve.scriptrunner.jira.workflow.ScriptWorkflowFunction.run(ScriptWorkflowFunction.groovy:202)
at com.onresolve.scriptrunner.jira.workflow.ScriptWorkflowFunction$run$1.callCurrent(Unknown Source)
at com.onresolve.scriptrunner.jira.workflow.ScriptWorkflowFunction.execute(ScriptWorkflowFunction.groovy:102)
at com.opensymphony.workflow.AbstractWorkflow.executeFunction(AbstractWorkflow.java:1014)
at com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkflow.java:1407)
at com.opensymphony.workflow.AbstractWorkflow.initialize(AbstractWorkflow.java:606)
at com.atlassian.jira.workflow.OSWorkflowManager.createIssue(OSWorkflowManager.java:742)
at com.atlassian.jira.issue.managers.DefaultIssueManager.createIssue(DefaultIssueManager.java:580)
at com.atlassian.jira.issue.managers.DefaultIssueManager.createIssue(DefaultIssueManager.java:494)
at com.atlassian.jira.issue.managers.DefaultIssueManager.createIssueObject(DefaultIssueManager.java:599)
at com.atlassian.jira.issue.managers.RequestCachingIssueManager.createIssueObject(RequestCachingIssueManager.java:198)
at com.atlassian.jira.issue.IssueManager$createIssueObject$0.call(Unknown Source)
at Script396.run(Script396.groovy:57)
if i remove newSubTask.setComponent(componentFRIproduct);
then the code is working fine.but i am unable to set the components in the subtask
Can anybody help me here to fix above problem?
Hi
From Jira API (https://docs.atlassian.com/software/jira/docs/api/7.6.1/ , mutableIssue inteface) method is:
setComponent(Collection<ProjectComponent> components)
So, probably you need not component, but collection with component(-s).
Atlassian Government Cloud has achieved FedRAMP Authorization at the Moderate level! Join our webinar to learn how you can accelerate mission success and move work forward faster in cloud, all while ensuring your critical data is secure.
Register NowOnline forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.