03-05-2015 02:09 AM
I'm writing some code where a get operation should not return a result but an error telling me the object isn't there. So I figured, I need to look for axl code 5007 - yet my parsing code didn't return it.
So I had a look at the raw response which looks like this, both on my CUCM 9.1 and 10.5
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>Item not valid: The specified User was not found</faultstring>
<detail>
<axlError>
<axlcode>5007</axlcode>
<axlmessage>Item not valid: The specified User was not found</axlmessage>
<request>getUser</request>
</axlError>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
However, I'm unable to find an example of an axl error in the 10.0 and 10.5 documentation, and in the 9.1 documentation (still a pdf and in the old format), the example listed is
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>Device not found with name SEP003094C39708.</faultstring>
<detail xmlns:axl="http://www.cisco.com/AXL/7.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.cisco.com/AXL/7.0
http://myhost/CCMApi/AXL/V1/axlsoap.xsd">
<axl:error sequence="1234">
<code>0</code>
<message>
<![CDATA[
Device not found with name SEP003094C39708.
]]>
</message>
<request>doDeviceLogin</request>
</axl:error>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
So, the example in the doc doesn't match what is actually being returned.. it seems that what used to be <axl:error> with sub elements <code><message> and request is now <axlError> with sub elements <axlcode><axlmessage>. So it seems some documentation update is in order to have what CUCM does match the documentation.
I then went back to my CUCM 8.6, and it also returns an error in the first format, thus not matching the documentation either. Then I went back to CUCM 7.1 and finally I was getting a response that actually matches the documentation:
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>Item not valid: The specified User was not found</faultstring>
<detail>
<axl:Error xmlns:axl="http://www.cisco.com/AXL/API/7.1">
<axl:code>5007</axl:code>
<axl:message>Item not valid: The specified User was not found</axl:message>
<request>getUser</request>
</axl:Error>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
So, I guess a retroactive documentation upgrade is in order, plus an investigation when the format actually was changed (I suspect 8.5 as it introduced quite a few axl format changes).
03-05-2015 07:09 AM
Yes, I believe there were a number of changes introduced with 8.x, including case sensitive changes. I'll make a request that the docs get updated.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide