2016-04-19 6 views
0

У меня есть задача получить информацию из учетной записи JIRA через Java. Я загрузил Jira API, который работает с Java, но я понятия не имею, как заставить его работать. Я должен пройти где-то свое имя пользователя и пароль для входа в систему, а затем получить информацию, которую хочу получить от того проекта, который я хочу.Подключить JIRA и получить информацию

JiraRestClientFactory factory = new AsynchronousJiraRestClientFactory(); 
URI uri = new URI(JIRA_URL); 
JiraRestClient client = factory.createWithBasicHttpAuthentication(uri, JIRA_ADMIN_USERNAME, JIRA_ADMIN_PASSWORD); 

// Invoke the JRJC Client 
Promise<User> promise = client.getUserClient().getUser("admin"); 


// Here I am getting the error!! 
User user = promise.claim(); 
/////////////////////////////////////// 

// Print the result 
System.out.println(String.format("Your admin user's email address is: %s\r\n", user.getEmailAddress())); 

// Done 
System.out.println("Example complete. Now exiting."); 
System.exit(0); 

Это выше код не работает, потому что либо, если я прохожу неправильный пароль и неправильное имя пользователя и показывает мне один и тот же результат. Я должен знать, как правильно подключиться к JIRA и получить некоторую информацию в JSON оттуда! Спасибо за ваше время!

Здесь ошибка

Caused by: com.atlassian.jira.rest.client.api.RestClientException: org.codehaus.jettison.json.JSONException: A JSONObject text must begin with '{' at character 9 of 

ответ

0

Я думаю, что у вас нет необходимого разрешения на доступ к Jira, вам нужно связаться с jira с учетной записью, которая имеет правильные разрешения!

0

Единственное, что я могу думать о том, что вы отправляете неправильно кредитки. Попробуйте использовать адрес электронной почты вместо «admin».

Вот код, который может помочь: https://github.com/somaiah/jrjc

я проверяю на вопрос, но получение информации о пользователе будет похож.

0

Вы можете использовать следующий код получить results.Remember я использую это в моем Gradle проекте, где я скачиваю все зависимости JRCJ

import com.atlassian.jira.rest.client.api.JiraRestClientFactory 
import com.atlassian.jira.rest.client.api.domain.User 
import com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory 
import com.atlassian.util.concurrent.Promise 

/** 
* TODO: Class description 
* 
* on 20 Jul 2017 
*/ 
class Jira { 
    private static final String JIRA_URL = "https://JIRA.test.com" 
    private static final String JIRA_ADMIN_USERNAME = "ABCDE" 
    private static final String JIRA_ADMIN_PASSWORD = "******" 

    static void main(String[] args) throws Exception 
    { 
    // Construct the JRJC client 
    System.out.println(String.format("Logging in to %s with username '%s' and password '%s'", JIRA_URL, JIRA_ADMIN_USERNAME, JIRA_ADMIN_PASSWORD)) 
    JiraRestClientFactory factory = new AsynchronousJiraRestClientFactory() 
    URI uri = new URI(JIRA_URL) 
    JiraRestClient client = factory.createWithBasicHttpAuthentication(uri, JIRA_ADMIN_USERNAME, JIRA_ADMIN_PASSWORD) 


    // Invoke the JRJC Client 
    Promise<User> promise = client.getUserClient().getUser(JIRA_ADMIN_USERNAME) 
    User user = promise.claim() 

    // Print the result 
    System.out.println(String.format("Your user's email address is: %s\r\n", user.getEmailAddress())) 

    // Done 
    //System.out.println("Example complete. Now exiting.") 
    //System.exit(0) 
    } 
}