嗨,我已经搜索了这个问题了很多,但找不到答案。也许有人在这里可以帮助我。
我正在使用SOAP与我们的本地JIRA安装进行交互。我在获取问题,添加工作日志,进度工作流程,创建问题方面没有任何问题。但是当我尝试编辑问题时,没有任何事情发生。
基本上,当我对updateIssue进行SOAP调用时,它没有错误,但返回的问题不包含我发送的任何更改。 (但是“更新”字段,其中包含上次更新的时间戳将相应更改)我认为这是一个权限问题,但如果我以无权编辑此问题的用户身份登录时尝试相同的更新调用,我会收到错误消息。我完全迷失在这里。我已经检查了日志文件,但也找不到任何东西。
有谁知道为什么会发生这种情况?或者我该如何进一步排除/调试它?
答案 0 :(得分:3)
我现在感觉很蠢。经过半天试图弄清楚它为什么不起作用后我终于研究了WSDL:)
我发送的更改格式的格式是不正确的。 PHP中第3个参数的正确结构如下所示:
$data = array('fields'=>array('id'=>'assignee','values'=>array($username)));
$this->jira->updateIssue($this->jiraAuth,$issueKey, $data);
让我偏离正轨的事情是,为了创造一个问题,一个像这样的简单结构就可以了:
$issue=array(
'type'=>3,
'priority'=>3,
'project'=>'XXX',
'duedate'=>time(),
'components'=>'',
'versions'=>'',
'fixVersions'=>'',
'assignee'=>'user1',
'reporter'=>'user1',
'environment'=>'',
'description'=>'test',
'summary'=>'test',
'timetracking'=>'',
'attachment'=>'',
'labels'=>''
);
return $this->jira->createIssue($this->jiraAuth,$issue);