为Jira创建问题时出现延迟错误

时间:2012-06-03 14:12:33

标签: python soap jira suds

每次我尝试向Jira发送问题时,我都会收到以下错误:

suds.WebFault: Server raised fault: 'org.xml.sax.SAXException: 
   Found character data inside an array element while deserializing'

我在stackoverflow和网络上搜索答案,有些人说这是suds 0.3<故障。但我使用的是0.4.1.1版本。

这是我的问题dict:

  issue = {"assignee": "user_test",
             "components": "17311",
             "project": "TES",
             "description" : "This is a test",
             "priority" : "Major",
             "summary" : "Just a test title",
             "type":"Incident"
             }

我所做的Jira课程:

  def create_issue(self,issue):
        if(not isinstance(issue,dict)):
            raise Exception("Issue must be a dict")

        new_issue = self.jira.service.createIssue(in0 = self.auth,in1 = issue)

        return new_issue["key"]

2 个答案:

答案 0 :(得分:1)

使用jira-python我可以添加类似的组件:

jira.create_issue(project={'key': project_id}, summary=ticket_summary,
                                 description=ticket_description, issuetype={'name': ticket_issue_type},
                                 components=[{'name': 'Application Slow'},], parent={'id': new_issue_key}, customfield_10101=termination_change_date,
                                 )

我一直试图将组件发送为“components = {'name':'Application Slow'}”,但我得到的是“数据不是数组”(或类似的东西)。我看了一下REST API以及它们的一些数组示例是如何组成的,这就是我上面的例子。

https://developer.atlassian.com/display/JIRADEV/JIRA+REST+API+Example+-+Create+Issue#JIRARESTAPIExample-CreateIssue-Request

Labels
"customfield_10006": ["examplelabelnumber1", "examplelabelnumber2"]
Labels are arrays of strings

我知道这有点偏离主题,但当我搜索我的问题时,我发现自己经常回到这里,所以我希望这对你的案件和其他任何人都有一点帮助。这个概念与components字段只接受一个对象数组相同。

答案 1 :(得分:0)

组件不对。它必须是一系列的东西,因为它是多值的。一些提示https://developer.atlassian.com/display/JIRADEV/Creating+a+JIRA+SOAP+Client或者看看JIRA Python CLI如何做到这一点

'components':[17311]