JCL 查询表单 JIRA 服务插件

JCL querying form JIRA serivce plugin

我有一个定期运行的 JIRA 服务。我需要寻找某些问题。为此,我正在使用搜索服务。因为服务 运行 没有用户上下文,所以我没有用户,所以我将 null 传递给搜索方法。

我可以从 JIRA UI 中搜索 Story 类型的问题,因此它们似乎已编入索引。但在插件中,结果总是 0 次点击。

不确定问题出在 null 用户还是其他什么地方。这应该是一个常见的场景,但我没能找到例子。

public class IssueService extends com.atlassian.jira.service.AbstractService {

    @ComponentImport
    @Inject
    private SearchService searchService;

    @Override
    public void run() {
        JqlClauseBuilder jqlClauseBuilder = JqlQueryBuilder.newClauseBuilder();
        com.atlassian.query.Query query = jqlClauseBuilder.issueType("Story").buildQuery();
        PagerFilter pagerFilter = PagerFilter.getUnlimitedFilter();
        com.atlassian.jira.issue.search.SearchResults searchResults = null;
        try {
            searchResults = searchService.search(null, query, pagerFilter);
        } catch (SearchException e) {
            throw new RuntimeException(e);
        }
        List<Issue> issueList = searchResults.getIssues();
    }

    //rest method omitted
} 

我的解决方案是使用以下方法:

SearchResults searchResults = 
searchService.searchOverrideSecurity(null, query, pagerFilter);