Groovy异常

时间:2015-11-03 12:36:04

标签: groovy jira

请帮忙。我无法理解我的剧本有什么问题。

import org.apache.log4j.Category
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.jql.builder.JqlQueryBuilder
import com.atlassian.jira.event.type.EventDispatchOption
import com.atlassian.jira.issue.MutableIssue
import java.util.Date
import java.util.Calendar
import com.atlassian.jira.bc.JiraServiceContextImpl
import com.atlassian.jira.web.bean.PagerFilter
import com.atlassian.jira.issue.Issue
import java.util.List
import com.atlassian.jira.issue.IssueInputParameters
import com.atlassian.jira.user.util.UserManager
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.crowd.embedded.api.CrowdService
import com.atlassian.crowd.embedded.api.User


def Category log = Category.getInstance("com.onresolve.jira.groovy.PostFunction")
log.setLevel(org.apache.log4j.Level.DEBUG)

def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
def ctx = new JiraServiceContextImpl(user)
def searchRequestService = ComponentManager.getInstance().getSearchRequestService()
def searchProvider = ComponentManager.getInstance().getSearchProvider()
def sr = searchRequestService.getFilter(ctx, 17540)
def searchResult = searchProvider.search(sr?.getQuery(), user, PagerFilter.getUnlimitedFilter())
def issueManager = ComponentManager.getInstance().getIssueManager()
def issues = searchResult.getIssues().collect {issueManager.getIssueObject(it.id)}


for ( issue in issues ){
    issueInputParameters issueToCreate = ComponentAccessor.getIssueService().newIssueInputParameters();
    issueToCreate.setSummary("This is a test.");
    issueToCreate.setDescription("Testing issue creation");
    issueToCreate.setAssigneeId(user.getName());
    issueService.createValidationResult validationResult = ComponentAccessor.getIssueService().validateCreate(user, issueToCreate);
    if(!validationResult.isValid()){
         for(String registeredErrorMessage:validationResult.getErrorCollection().getErrors().values())
         {
              printx "Failed"
         }
    }
    else {
        issueService.issueResult createdIssue = ComponentAccessor.getIssueService().create(user, validationResult);
    }
}
return issues

我得到了下一个例外:

  

groovy.lang.MissingMethodException:没有方法签名:   org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.issueInputParameters()   适用于参数类型:   (com.atlassian.jira.issue.IssueInputParametersImpl)值:   [com.atlassian.jira.issue.IssueInputParametersImpl@6cde0354] at   Script87.run(Script87.groovy:34)

谢谢。

1 个答案:

答案 0 :(得分:1)

不应该将此行中的issueInputParameters设为首都 - IssueInputParameters

issueInputParameters issueToCreate =  ComponentAccessor.getIssueService().newIssueInputParameters();