Suds+JIRA=SAXException

2024-10-02 12:22:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用python2.6和suds0.3.7与jira4.0交互。在

当我连接到JIRA服务器时,我可以获得所有问题的信息。在

但是,当我想更新一个问题时,我会从suds得到一个SAXException(大概是):

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

我遵循这里描述的步骤:http://confluence.atlassian.com/display/JIRA/Creating+a+SOAP+Client

只是用肥皂水代替肥皂泡电话。在

我更新问题的尝试如下所示,但有例外:

 >>> w="http://bugs/rpc/soap/jirasoapservice-v2?wsdl"
 >>> from suds.client import Client
 >>> client = Client(w)
 >>> auth = client.service.login("myname","mypass")
 >>> issue = client.service.getIssue(auth,"BUG-30112")
 >>> issue.summary
 This is the original summary for BUG-30112
 >>> 
 >>> client.service.updateIssue(auth,"BUG-30112",[
 ...            {"id":"summary","values":["My new summary"]}])

 Traceback (most recent call last):
   File "<interactive input>", line 2, in <module>
   File "C:\Python26\lib\suds\client.py", line 535, in __call__
     return client.invoke(args, kwargs)
   File "C:\Python26\lib\suds\client.py", line 595, in invoke
     result = self.send(msg)
   File "C:\Python26\lib\suds\client.py", line 630, in send
     result = self.failed(binding, e)
   File "C:\Python26\lib\suds\client.py", line 681, in failed
     r, p = binding.get_fault(reply)
   File "C:\Python26\lib\suds\bindings\binding.py", line 235, in get_fault
     raise WebFault(p, faultroot)
 WebFault: Server raised fault: 'org.xml.sax.SAXException: Found character data inside an array element while deserializing'
 >>>

有人见过这样的问题吗?在


Tags: inpyclientauthlibservicelinesummary
3条回答

如果你切换到suds3.0.9(beta版),这个问题就解决了。。。唯一能搞定的人。在

增加详细程度以查看发送的内容如何?或者使用wireshark。您也可以对SOAPpy执行相同的操作,并精确地比较发送的内容。调试soap错误对我来说通常是这样的:-/

~马特

实际上,只需将库从suds更改为SOAPpy,一切都开始正常工作,没有其他修改。有点烦。我跳过了SOAPpy,因为它似乎已经被抛弃了,而且与suds相比,它的安装更加复杂。但索比很管用!在

谢谢大家。在

相关问题 更多 >

    热门问题