• Community
  • Questions
  • com.atlassian.jira.rest.client.api.domain.Issue.getIssueLinks() returns null unexpectedly

com.atlassian.jira.rest.client.api.domain.Issue.getIssueLinks() returns null unexpectedly Edited

the javadoc for com.atlassian.jira.rest.client.api.domain.Issue.getIssueLinks() says it returns issue links for this issue (possibly nothing) or null when issue links are deactivated for this JIRA instance

now, in our instance (on JIRA 7.3.3), links are enabled, and we have issues that contain links.  but getIssueLinks() is returning null.  i'm wondering if there's some other setting (or if i'm doing it wrong).  here's my code snippet (the first branch is always invoked):


Promise<SearchResult> searchJqlPromise = jiraRestClient.getSearchClient().searchJql(this.getQuery(proj), ISSUES_PER_CALL, startAt, fieldSet);
for (Issue issue : searchJqlPromise.claim().getIssues()) {
if (null == issue.getIssueLinks()) {
System.err.println("for issue " + issue.getKey() + "; getIssueLinks() returned null");
} else {
for (IssueLink link : issue.getIssueLinks()) {
String targetKey = link.getTargetIssueKey();
System.err.println("for issue " + issue.getKey() + " there is a link with key " + targetKey);


 I was using JRJC 3.0.0 but have now found 4.0.0 exhibits the same behaviour.

1 answer

For the benefit of all, I solved my own problem by trawling through the source code.

In the jiraRestClient.getSearchClient().searchJql() call  to fetch the issues, the last parameter is a set of Strings that specify the fields to return.  This set has to include "issuelinks" for getIssueLinks() to return the list.  ("*all" will also work). 

To reduce data transfer volume (I'm often retrieving 30,000 issues down a WAN) I had cut down the list of fields to the minimum.  Adding in the "issuelinks" explicitly has solved the problem.

JRJC team, you could maybe consider put a small caveat in the javadoc for getIssueLinks() along these lines.

Suggest an answer

Log in or Join to answer
Community showcase
Jason Wong
Published Tuesday in Agility Beta

Welcome to agility

Every team in the world is unique, and so   Atlassian believes   that each and every team's best way of working  needs to  be molded to their unique circumstances  – ...

436 views 6 16
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot