JIRA REST API - 415 ClientResponse

时间:2018-01-18 18:21:34

标签: java json post jersey jira-rest-api

我正在尝试使用Jersey客户端通过WebResource实例发送POST请求。但无论我如何指定请求标头或类型,它都会给我415 Unsupported Media Type错误。以下是我的代码

String SERVICE_URL = "http://hostIpAddress:8080/JiraUpdate/rest/createin/jira/createticket?"; // hostIpaddress is our server ip
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
System.out.println("SERVICE_URL=" + SERVICE_URL);
WebResource webResource = client.resource(UriBuilder.fromUri(SERVICE_URL).build());
String input = "{\"fields\":{\"project\":{\"key\":\"Invoicing\"},\"summary\":\"REST Test\",\"description\": \"Creating of an issue using project keys and issue type names using the REST API\",\"issuetype\":{\"name\":\"Bug\"}}}";
ClientResponse response = webResource.header("Content-Type", "application/json;charset=UTF-8")
      .type(MediaType.TEXT_PLAIN_TYPE).post(ClientResponse.class, input);

我尝试将类型设置为MediaType.APPLICATION_FORM_URLENCODED_TYPE以及MediaType.APPLICATION_JSON,但它不会更改响应。我在linux环境中将此代码作为独立的可执行JAR运行。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

根据我在第二条评论中提到的链接SO文章中的Vijay-Bhushan示例,您的代码应该是(并且他注意到UTF-8不需要):

<p><?php echo mysql_results($views, 0); ?></p>

Canonical Disjunctive Normal Form).文档有一些很好的例子。