问题描述
以下代码在公开的jira问题上可以正常工作。但是在封闭/已发布的问题上尝试使用此方法时,出现错误。想看看是否有可能做到这一点?在已关闭/已发布的jira问题上手动进行操作,我们可以更新这些字段
Client client = Client.create();
WebResource webResource = client.resource("https://jira.com/rest/api/latest/issue/JIRA_KEY1");
String data1 = "{\r\n" +
" \"fields\" : {\r\n" +
" \"customfield_10201\" : \"Value 1\"\r\n" +
" }\r\n" +
"}";
String auth = new String(Base64.encode("user" + ":" + "pass"));
ClientResponse response = webResource.header("Authorization","Basic " + auth).type("application/json").accept("application/json").put(ClientResponse.class,data1);
收到错误
Http Error : 400{"errorMessages":[],"errors":{"customfield_10201":"Field 'customfield_10201' cannot be set. It is not on the appropriate screen,or unkNown."}}
解决方法
可能存在一个限制,即一旦问题被标记为完成,该字段的值将无法更改。
尝试通过网络界面打开已完成的问题并更改字段的值;如果无法通过Web界面执行此操作,则无法执行REST API。