Using the REST API with Java

Jredmine

Jredmine (implements its own redmine plugin and correspodnsing java client - more other/features than redmine rest api)

redmine-jconnector

redmine-jconnector (only until redmine 1.4 using REST API)

Redmine Java API library from taskadapter

Redmine Java API library is a FREE third-party Java library that can be used to access the Redmine API. It is released under Apache 2 open-source license. (support until Redmine 2.3 using REST API)

Sample usage:

import java.io.IOException;
import java.net.URISyntaxException;
import java.util.List;
import com.taskadapter.redmineapi.RedmineManager;
import com.taskadapter.redmineapi.bean.Issue;

public class Simple {
    private static String redmineHost = "https://www.hostedredmine.com";
    private static String apiAccessKey = "a3221bfcef5750219bd0a2df69519416dba17fc9";
    private static String projectKey = "taskconnector-test";
    private static Integer queryId = null; // any

    public static void main(String[] args) {
        RedmineManager mgr = new RedmineManager(redmineHost, apiAccessKey);
        try {
            tryGetIssues(mgr);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    private static void tryGetIssues(RedmineManager mgr) throws Exception {
        List<Issue> issues = mgr.getIssues(projectKey, queryId);
        for (Issue issue : issues) {
            System.out.println(issue.toString());
        }
    }
}

Create Issue:

    Issue issueToCreate = new Issue();
    issueToCreate.setSubject("This is the summary line 123");
    Issue newIssue = mgr.createIssue(PROJECT_KEY, issueToCreate);

Get issue by ID:

    Issue issue = mgr.getIssueById(123);