有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使用restclient API向现有JIRA问题添加附件

我可以使用rest客户端API创建jira问题,但我无法将screeshot/attachment附加到现有的JIRA问题。如果有人能提供一个非常感谢的解决方案,那将非常有帮助

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

代码片段:-

私有静态字符串addAttachment(字符串attachmentfilepath)引发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 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。太阳运动衫应用程序编程接口。客户ClientHandlerException:Java类com的消息体编写器。太阳运动衫多部分。多部分和Java类型的com类。太阳运动衫多部分。多部分和MIME媒体类型多部分/表单数据;boundary=未找到boundary_1_18541827_1358346116249

例外消息2:com。太阳运动衫应用程序编程接口。客户ClientHandlerException:Java类com的消息体编写器。太阳运动衫多部分。多部分和Java类型的com类。太阳运动衫多部分。多部分和MIME媒体类型多部分/表单数据;boundary=未找到boundary_1_18541827_1358346116249


共 (1) 个答案

  1. # 1 楼答案

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