Cannot insert a null into column (speeddial.label). (UCM 8.5)

Version 1
    This document was generated from CDN thread

    Created by: Petter Sjolin on 13-05-2011 04:33:40 AM
    I am getting the following error when trying to create phones or device profiles with empty speed dial labels on an 8.4 UCM: "Cannot insert a null into column (speeddial.label)." It seems like a bug, since this has worked in previous versions and possible from the admin web GUI. I cannot find a place to report this as a bug so I'm posting here.
     
    Example AXL SOAP (Creating a device profile):

    ---[HTTP request]---
    SOAPAction: "CUCMB ver=8.5"
    Accept: text/xml, multipart/related, text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
    Content-Type: text/xml;charset="utf-8"
     
    <?xml version="1.0" ?>
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
      <ns2:addDeviceProfile xmlns:ns2="http://www.cisco.com/AXL/API/8.5">
       <deviceProfile>
        <name>DP 7960 NO LABEL</name>
        <product>Cisco 7960</product>
        <class>Device Profile</class>
        <protocol>SCCP</protocol>
        <mlppDomainId>-1</mlppDomainId>
        <mlppIndicationStatus>Default</mlppIndicationStatus>
        <preemption>Default</preemption>
        <lines/>
        <phoneTemplateName>Standard 7960 SCCP</phoneTemplateName>
        <speeddials>
         <speeddial>
          <dirn>123124</dirn>
          <label></label>
          <index>2</index>
         </speeddial>
        </speeddials>
        <userlocale></userlocale>
        <ignorePresentationIndicators>false</ignorePresentationIndicators>
        <softkeyTemplateName></softkeyTemplateName>
        <services/>
       </deviceProfile>
      </ns2:addDeviceProfile>
    </S:Body>
    </S:Envelope>

     
    Yields the following response:

     
    ---[HTTP response 500]---
    HTTP/1.1 500 Internal Server Error
     
    <?xml version='1.0' encoding='utf-8'?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
      <soapenv:Fault>
       <faultcode>soapenv:Client</faultcode>
       <faultstring>Cannot insert a null into column (speeddial.label).</faultstring>
       <detail>
        <axlError>
         <axlcode>-391</axlcode>
         <axlmessage>Cannot insert a null into column (speeddial.label).</axlmessage>
         <request>addDeviceProfile</request>
        </axlError>
       </detail>
      </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>

     
    If this is a bug, how do I submit it to an issue tracker?
    If this is not a bug, how do I go about setting empty labels on speed dials?
     
    Thanks,
    Petter

    Subject: RE: Cannot insert a null into column (speeddial.label). (UCM 8.5)
    Replied by: Petter Sjolin on 13-05-2011 07:27:58 AM
    I found a way to get this to work. To set speed dial labels to empty you can omit the label tag from the speed dial entirely. The soap envelope should look like the following:

    <?xml version="1.0" ?>
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
    <ns2:addDeviceProfile xmlns:ns2="http://www.cisco.com/AXL/API/8.5">
    <deviceProfile>
    <name>DP 7960 NO LABEL</name>
    <product>Cisco 7960</product>
    <class>Device Profile</class>
    <protocol>SCCP</protocol>
    <mlppDomainId>-1</mlppDomainId>
    <mlppIndicationStatus>Default</mlppIndicationStatus>
    <preemption>Default</preemption>
    <lines/>
    <phoneTemplateName>Standard 7960 SCCP</phoneTemplateName>
    <speeddials>
    <speeddial>
    <dirn>123124</dirn>
    <index>2</index>
    </speeddial>
    </speeddials>
    <userlocale></userlocale>
    <ignorePresentationIndicators>false</ignorePresentationIndicators>
    <softkeyTemplateName></softkeyTemplateName>
    <services/>
    </deviceProfile>
    </ns2:addDeviceProfile>
    </S:Body>
    </S:Envelope>

    Subject: RE: Cannot insert a null into column (speeddial.label). (UCM 8.5)
    Replied by: Rusheel Jain on 07-11-2012 06:56:31 AM
    Hi
     
    I am working on version 7
    I followed your changes i.e. removed Label but i am still getting the same error.
    Infact when I remove <dirn> tag then it shows no error but the changes are not reflected in CUCM web portal
     
    here is what i have written:
     

    string soap = "<SOAP-ENV:Envelope xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" ";
                    soap += "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">";
     
                    soap += "<SOAP-ENV:Body>";
                    soap += "<axl:updatePhone xmlns:axl=\"http://www.cisco.com/AXL/API/7.0\">";
                    soap += "<name>";
                    soap += "SEP3212";
                    soap += "</name>";
                    soap += "<speeddials>";
                    soap += "<speeddial>";
                    soap += "<dirn>";
                    soap += "3212";
                    soap += "</dirn>";
                    soap += "<label>";
                    soap += "rush";
                    soap += "</label>";
                    soap += "<asciiLabel>";
                    soap += "7";
                    soap += "</asciiLabel>";
                    soap += "</speeddial>";
                    soap += "</speeddials>";
                    soap += "</axl:updatePhone>";
                    soap += "</SOAP-ENV:Body>";
                    soap += "</SOAP-ENV:Envelope>";
     
                    Console.Write("getting version");
                    string version = SoapVersion(soap);
                    Console.Write(version);

     
    Any suggestions will be quite helpful
     
    Thanks