Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 强制Jira通过工作流转换,不包括验证程序和条件_Java_Workflow_Jira_Jira Plugin - Fatal编程技术网

Java 强制Jira通过工作流转换,不包括验证程序和条件

Java 强制Jira通过工作流转换,不包括验证程序和条件,java,workflow,jira,jira-plugin,Java,Workflow,Jira,Jira Plugin,我对吉拉的过渡有一个问题,我必须通过。我有自动关闭Jira中问题的服务(从状态已解决到关闭) 它运行良好,但若在转换时出现任何条件或验证程序(或脚本条件),它将无法通过是否有任何方法可以通过除验证程序和条件之外的转换? 下面是我的实际代码: // issue service IssueService issueService = ComponentAccessor.getIssueService(); //get user for passing transition u

我对吉拉的过渡有一个问题,我必须通过。我有自动关闭Jira中问题的服务(从状态已解决到关闭)

它运行良好,但若在转换时出现任何条件或验证程序(或脚本条件),它将无法通过是否有任何方法可以通过除验证程序和条件之外的转换? 下面是我的实际代码:

// issue service
IssueService issueService = ComponentAccessor.getIssueService();

//get user for passing transition           
user  = userUtil.getUserByKey(closeUserKey).getDirectoryUser();

//get issue object
Issue issueObj = ComponentAccessor.getIssueManager().getIssueObject(issueId);

// Parameters for issue
IssueInputParameters issueInputParams = new IssueInputParametersImpl();

//setting comment
issueInputParams.setComment("Issue closed by automatical service after specified time");

//avoid checking fields on screen and additional flag for default values
issueInputParams.setApplyDefaultValuesWhenParameterNotProvided(true);
issueInputParams.setSkipScreenCheck(true);

//validate if transition is ok
TransitionValidationResult validationResult = issueService.validateTransition(user, issueObj.getId(), closeStepId, issueInputParams);

//if is valid pass it               
if (validationResult.isValid()) {
    issueService.transition(user, validationResult);
    IssueService.IssueResult issueResult = issueService.transition(user, validationResult);

} else {
    System.out.println(validationResult.getErrorCollection().toString());
}

自动化插件能够跳过转换条件检查。它的来源是开放的,它是这样做的:

import static com.atlassian.jira.workflow.TransitionOptions.Builder;
// ....
if (skipConditions)
{
    final TransitionOptions trasitionOptions = new Builder().skipPermissions().skipValidators().setAutomaticTransition().skipConditions().build();
    transitionValidationResult = issueService.validateTransition(user,
            mutableIssue.getId(), getTransitionId(actionId), params, trasitionOptions);
}