I am trying to access our JIRA instance with a Python SOAP client, but I keep receiving warnings about missing schemaLocation attributes. Below is the code I’m using:
#!/usr/bin/env python
import SOAPpy, getpass, datetime
# Accessing JIRA SOAP service
client = SOAPpy.WSDL.Proxy('http://myserver.example.com:8080/rpc/soap/jirasoapservice-v2?wsdl')
username = 'myuser'
password = 'mypassword'
def showMethods():
for method in client.methods.keys():
print method, ': '
for input_param in client.methods[method].inparams:
print '\t', input_param.name.ljust(12), input_param.type
for output_param in client.methods[method].outparams:
print '\tOutput: ', output_param.name.ljust(12), output_param.type
# Authenticate and get session token
token = client.login(username, password)
# Retrieve a specific issue
task = client.getIssue(token, 'PROJ-123')
print "Retrieved task:", task
print "Finished!"
The warnings indicate that there are several missing schemaLocation attributes for different imports related to the JIRA service, such as those from service.soap.rpc.jira.atlassian.com and beans.soap.rpc.jira.atlassian.com. Additionally, there’s a deprecation warning about object initialization. I’m uncertain whether these warnings will affect my connectivity. Has anybody else faced this while using SOAPpy with JIRA?
Yeah, those schema warnings don’t matter - I’ve been using JIRA’s SOAP API for years and it always throws those messages. Your connection works fine, just ignore the noise. But heads up - SOAPpy is pretty outdated at this point. If you can swing it, try suds-jurko instead. It handles JIRA’s wonky WSDL way better.
I ran into the same warnings working with legacy JIRA SOAP services a few years ago. Those schemaLocation warnings won’t break your connection - they just mean the WSDL parser can’t fully validate the schema. Your code should work fine despite the messages. But honestly, I’d start planning a migration since JIRA killed their SOAP API around version 7.0. The REST API is way better and actually gets updates. If you’re stuck with SOAP right now, try suppressing the warnings with Python’s warnings module or switch to python-zeep - it handles these WSDL issues much better than SOAPpy. That deprecation warning about object initialization? SOAPpy’s just really outdated at this point.
Those schemaLocation warnings are just cosmetic - they won’t break your JIRA integration. I’ve hit the same warnings on multiple enterprise JIRA setups with SOAPpy. The WSDL’s malformed but it works fine. JIRA’s SOAP was never standards-compliant anyway.
Your auth and getIssue calls will run without issues. Just add exception handling around login and API calls since JIRA SOAP gets flaky with timeouts and auth failures. Cache your session token if you’re making multiple requests - too many logins will get you rate limited.
Watch out for encoding problems with special characters in descriptions or comments. SOAPpy chokes on certain Unicode characters that JIRA accepts. Test against issues with different content types before you go live.