java - 如何使用 Rest-client API 将附件添加到现有 JIRA 问题

标签 java attachment jira-rest-java-api

我可以使用其余客户端 API 创建 jira 问题,但无法将屏幕截图/附件附加到现有的 JIRA 问题。如果有人能够提供一个解决方案,那将非常有帮助,我们将不胜感激。

我刚刚编写了以下代码片段,用于将 jpeg 文件附加到现有的 JIRA Issue。但后来我经历了“线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/commons/httpclient/HttpConnectionManager”

代码片段:-

私有(private)静态字符串addAttachment(字符串附件文件路径)抛出URISyntaxException,FileNotFoundException{

    final java.net.URI jiraServerUri = new java.net.URI("https://oliveits.atlassian.net");
    FileInputStream fileStreamPath = new FileInputStream(attachmentfilenamepath);
    JerseyJiraRestClientFactory factory = new JerseyJiraRestClientFactory();
    NullProgressMonitor pm = new NullProgressMonitor();
    System.out.println("Server Url  :"+jiraServerUri);
    JiraRestClient restClient = factory.createWithBasicHttpAuthentication(jiraServerUri,"mobileqa","MobileQA1234");
    Issue issue1 = restClient.getIssueClient().getIssue(newKey, pm);
    final java.net.URI AttachmentUri = new java.net.URI(jiraServerUri+"/rest/api/2/issue/"+newKey+"/attachments");
    System.out.println("URI    :"+issue1.getAttachmentsUri());
    //restClient.getIssueClient().addAttachment(pm,issue1.getAttachmentsUri(), fileStreamPath , imageName);
    restClient.getIssueClient().addAttachment(pm, AttachmentUri, fileStreamPath, imageName);
    return attachmentfilepath;
}

异常(exception):-

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/httpclient/HttpConnectionManager
at com.atlassian.jira.rest.client.internal.jersey.JerseyJiraRestClientFactory.create(JerseyJiraRestClientFactory.java:34)
at com.atlassian.jira.rest.client.internal.jersey.JerseyJiraRestClientFactory.createWithBasicHttpAuthentication(JerseyJiraRestClientFactory.java:39)
at com.jtricks.JTricksRESTClient.addAttachment(JTricksRESTClient.java:157)
at com.jtricks.JTricksRESTClient.main(JTricksRESTClient.java:101)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.httpclient.HttpConnectionManager
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 4 more

刚刚将缺少的 jar 文件添加到类路径中。但我遇到了如下所述的异常。

异常消息-1:com.sun.jersey.api.client.ClientHandlerException:Java 类 com.sun.jersey.multipart.MultiPart 和 Java 类型类 com.sun.jersey.multipart.MultiPart 的消息正文编写器和 MIME 媒体类型 multipart/form-data;边界=Boundary_1_18541827_1358346116249 未找到

异常消息-2:com.sun.jersey.api.client.ClientHandlerException:Java 类 com.sun.jersey.multipart.MultiPart 和 Java 类型类 com.sun.jersey.multipart.MultiPart 的消息正文编写器和 MIME 媒体类型 multipart/form-data;边界=Boundary_1_18541827_1358346116249 未找到

最佳答案

您的问题来自于无法找到 org.apache.commons.httpclient.HttpConnectionManager 类。在类路径中查找 commons-httpclient JAR。

关于java - 如何使用 Rest-client API 将附件添加到现有 JIRA 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14338507/

相关文章:

java - 阻止添加空元素的集合实现

java - 通过rest在控制台上显示json

Java Swing : How to change GUI dynamically

PHP发送邮件附件

rest - 如何通过 REST API 更新 JIRA 中的自定义字段?

Java在JFrame中使用构造函数参数创建cardLayout

content-management-system - couchdb,如何重命名附件

sharepoint - 如何让SharePoint接受文件名中带有特殊字符的附件?

curl - 使用 REST API 更新 JIRA 票证状态

java - 在我的客户端代码中获取通知