05-04-2020 12:32 AM
We are migrating from Cisco CUCM 9.1 to Cisco CUCM 12.5 and we use SOAP requests to manipulate AXL entities (RoutePattern, SipTrunk, User...).
We have downloded AXLAPIService.cs, generated AXLAPIService.dll and AXLAPIService.XmlSerializer.dll files.
All is OK for RoutePattern and SipTrunk entities (Create, Update, Delete, Get...).
We have a problem with Users. GetUser method is OK but when we call AddUser or UpdateUser methods we have a -1 error. It was OK in Version 9.1 but not in version 12.5. We don't know what's wrong.
Here the trace of an example of call :
2020-04-29 10:47:31,791 DEBUG [http-bio-8443-exec-21] servletRouters.AXLAlpha - AXL REQUEST :
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<addUser xmlns="http://www.cisco.com/AXL/API/12.5">
<user xmlns="">
<firstName>TestMD2</firstName>
<lastName>LN</lastName>
<emMaxLoginTime xsi:nil="true" />
<userid>TestMD2</userid>
<password>*********</password>
<userLocale xsi:nil="true" />
<digestCredentials xsi:nil="true" />
<presenceGroupName>Standard Presence group</presenceGroupName>
<subscribeCallingSearchSpaceName xsi:nil="true" />
<mlppPassword xsi:nil="true" />
<imAndPresenceEnable>True</imAndPresenceEnable>
<serviceProfile xsi:nil="true" />
<directoryUri xsi:nil="true" />
<selfService xsi:nil="true" />
<userProfile xsi:nil="true" />
<ldapDirectoryName xsi:nil="true" />
<ipccExtension xsi:nil="true" />
<ipccRoutePartition xsi:nil="true" />
<convertUserAccount xsi:nil="true" />
<customerName xsi:nil="true" />
</user>
</addUser>
</soap:Body>
</soap:Envelope>
2020-04-29 10:47:31,792 DEBUG [http-bio-8443-exec-21] servletRouters.AXLAlpha - Request processed by AXIS
2020-04-29 10:47:31,819 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - dbConnector Initialization in handler.java
2020-04-29 10:47:31,820 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - version - CUCM:DB ver=12.5 addUser
2020-04-29 10:47:31,822 DEBUG [http-bio-8443-exec-21] axlapiservice.Axl - Connection given to current thread
2020-04-29 10:47:31,827 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - getPkid Query is :select pkid from Matrix where my_lower(name ) =my_lower('Standard Presence group' )
2020-04-29 10:47:31,829 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - fkCallingSearchspace_restrict IS Being assigned a null value in addfkdataaxis
2020-04-29 10:47:31,831 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - fkUCUserProfile IS Being assigned a null value in addfkdataaxis
2020-04-29 10:47:31,832 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - fkDirectoryPluginConfig IS Being assigned a null value in addfkdataaxis
2020-04-29 10:47:31,832 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - fkUCServiceProfile IS Being assigned a null value in addfkdataaxis
2020-04-29 10:47:31,832 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - insert into EndUser ( Userid,fkUCServiceProfile,fkCallingSearchspace_restrict,fkMatrix_Presence,fkDirectoryPluginConfig,userrank,fkUCUserProfile,FirstName,pkid,enableCUPS,LastName ) values ( 'TestMD2',null,null,'ad243d17-98b4-4118-8feb-5ff2e1b781ac',null,'1',null,'TestMD2','360db4c7-5ec5-0427-3d04-72913743d899','t','LN' )
2020-04-29 10:47:31,986 DEBUG [http-bio-8443-exec-21] axlapiservice.Handler - insert into crsApplication ( fkenduser,aapromptname ) values ( '360db4c7-5ec5-0427-3d04-72913743d899','LNTestMD2' )
2020-04-29 10:47:31,990 ERROR [http-bio-8443-exec-21] axlapiservice.AddUserHandler - Error while inserting user: java.lang.NullPointerException
2020-04-29 10:47:31,992 DEBUG [http-bio-8443-exec-21] axlapiservice.Axl - Connection closed and hashmap entry removed in AXL.java closing connection
2020-04-29 10:47:31,992 ERROR [http-bio-8443-exec-21] axlapiservice.AXLAPIServiceSkeleton - com.cisco.www.axlapiservice.AXLAPIServiceSkeleton@e23e90
java.lang.NullPointerException
at com.cisco.www.axlapiservice.Handler.escapeSingleQuote(Handler.java:2440)
at com.cisco.www.axlapiservice.Handler.getPkid(Handler.java:3004)
at com.cisco.www.axlapiservice.AddUserHandler.doAdd(AddUserHandler.java:612)
at com.cisco.www.axlapiservice.AXLAPIServiceSkeleton.addUser(AXLAPIServiceSkeleton.java:1741)
at com.cisco.www.axlapiservice.AXLAPIServiceMessageReceiverInOut.addUser(AXLAPIServiceMessageReceiverInOut.java:11814)
at com.cisco.www.axlapiservice.AXLAPIServiceMessageReceiverInOut.invokeBusinessLogic(AXLAPIServiceMessageReceiverInOut.java:1549)
at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:742)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:484)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:337)
at com.cisco.www.servletRouters.AXLAlpha.forwardToAxis(AXLAlpha.java:301)
at com.cisco.www.servletRouters.AXLAlpha.doPost(AXLAlpha.java:96)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.cisco.www.servletRouters.filters.ThrottlingFilter.doFilter(ThrottlingFilter.java:66)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.cisco.vos.platform.tomcat.valves.CiscoResponseHeaderFilter.doFilter(Unknown Source)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.cisco.www.servletRouters.filters.AuthenticationFilter.doFilter(AuthenticationFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.cisco.www.servletRouters.filters.NormalizeHeaderFilter.doFilter(NormalizeHeaderFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.cisco.www.servletRouters.filters.TimingFilter.doFilter(TimingFilter.java:43)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:603)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:270)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1137)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:319)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
2020-04-29 10:47:31,993 DEBUG [http-bio-8443-exec-21] axlapiservice.AXLCallFlow - In AXL CAll Flow class, method getSOAPError
2020-04-29 10:47:31,994 DEBUG [http-bio-8443-exec-21] axlapiservice.AXLCallFlow - Setting soap fault
2020-04-29 10:47:31,994 DEBUG [http-bio-8443-exec-21] axlapiservice.AXLCallFlow - Setting soap fault2
2020-04-29 10:47:32,013 DEBUG [http-bio-8443-exec-21] servletRouters.AXLAlpha - <?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/>
<detail>
<axlError>
<axlcode>-1</axlcode>
<axlmessage/>
<request>addUser</request>
</axlError>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
2020-04-29 10:47:32,013 DEBUG [http-bio-8443-exec-21] servletRouters.AXLAlpha - Finished processing request
05-14-2020 02:41 AM
We have found the solution: contrary to what is indicated in the documentation, the CustomerName field must start with a capital letter!
11-14-2022 10:41 PM
I have encountered similar issues, however, my case is for when i try to update the end user PIN via an application integrated to CUCM via AXL 12.5. While the PIN update gets completed, but, i see the exception reported on the third party PIN reset application and when i check the CUCM Side AXL logs i see that the AXL transaction gets successfully completed and closed post which it generates the java.lang.NullPointerException error. Can someone let me know what can be the solution for this issue?
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