i am getting error "no schemaLocation attribute in import" when using Python client accessing JIRA via SOAP
这里是示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | #!/usr/bin/env python # Sample Python client accessing JIRA via SOAP. By default, accesses # http://jira.atlassian.com with a public account. Methods requiring # more than basic user-level access are commented out. Change the URL # and project/issue details for local testing. # # Note: This Python client only works with JIRA 3.3.1 and above (see # http://jira.atlassian.com/browse/JRA-7321) # # Refer to the SOAP Javadoc to see what calls are available: import SOAPpy, getpass, datetime soap = SOAPpy.WSDL.Proxy('http://jira.company.com:8080/rpc/soap/jirasoapservice-v2?wsdl') jirauser='username' passwd='password' # This prints available methods, but the WSDL doesn't include argument # names so its fairly useless. Refer to the Javadoc URL above instead #print 'Available methods: ', soap.methods.keys() def listSOAPmethods(): for key in soap.methods.keys(): print key, ': ' for param in soap.methods[key].inparams: print '\\t', param.name.ljust(10), param.type for param in soap.methods[key].outparams: print '\\tOut: ', param.name.ljust(10), param.type auth = soap.login(jirauser, passwd) issue = soap.getIssue(auth, 'QA-79') print"Retrieved issue:", issue print"Done!" |
完整的错误如下,为了提供完整的上下文:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | IMPORT: http://service.soap.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://jira.mycompany.com:8080/rpc/soap/jirasoapservice-v2 no schemaLocation attribute in import IMPORT: http://exception.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://schemas.xmlsoap.org/soap/encoding/ no schemaLocation attribute in import /usr/local/lib/python2.6/dist-packages/wstools-0.3-py2.6.egg/wstools/XMLSchema.py:3107: DeprecationWarning: object.__init__() takes no parameters tuple.__init__(self, args) IMPORT: http://service.soap.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://beans.soap.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://jira.mycompany.com:8080/rpc/soap/jirasoapservice-v2 no schemaLocation attribute in import IMPORT: http://schemas.xmlsoap.org/soap/encoding/ no schemaLocation attribute in import IMPORT: http://service.soap.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://beans.soap.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://exception.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://schemas.xmlsoap.org/soap/encoding/ no schemaLocation attribute in import IMPORT: http://beans.soap.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://jira.mycompany.com:8080/rpc/soap/jirasoapservice-v2 no schemaLocation attribute in import IMPORT: http://exception.rpc.jira.atlassian.com no schemaLocation attribute in import IMPORT: http://schemas.xmlsoap.org/soap/encoding/ no schemaLocation attribute in import |
我不久前将 JIRA Python CLI 代码更改为使用 suds 而不是 SOAPpy,并且没有回头。 SOAPpy 已经很老了,现在似乎不受支持。