02-27-2014 06:17 AM
I have a custom CVP (8.5.1) element that accepts some parameters, then makes a web service call that calls a stored procdure to insert a record that stores the DTMF (and associated answer ID) after a user makes a selection from a modified menu element.
If my menu has three options, I get no errors when I select option 1 or 3, but only with option 2 (error in title). Also, when I execute the CVP application in our test environment, there are no errors. When I deploy to our Production VXML server, I get this error.
I checked the configurations of both elements in the "test" and "production" environments, and both are the same. Here is the stack trace that is posted from the error log:
TC_Lupron_GetBack_001,02/27/2014 07:59:48.609,A built-in element encountered an exception of type java.lang.NullPointerException. The error was: java.lang.NullPointerException
java.lang.NullPointerException
at com.spanlink.trialcard.data.voice.TC_AddSurveyQApair.addXmlBody(TC_AddSurveyQApair.java:121)
at com.audium.server.voiceElement.VoiceElementBase.getVoiceElementResult(VoiceElementBase.java:706)
at com.audium.server.voiceElement.VoiceElementBase.service(VoiceElementBase.java:484)
at com.audium.server.controller.Controller.goToVoiceElement(Controller.java:2779)
at com.audium.server.controller.Controller.goToElement(Controller.java:2681)
at com.audium.server.controller.Controller.continueCall(Controller.java:2511)
at com.audium.server.controller.Controller.doPost(Controller.java:733)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:662)
Any ideas as to why this element runs great on one server and not in another? Thanks in advance...
Solved! Go to Solution.
02-27-2014 07:20 AM
I found out what the error was. At the start of the CVP application, I have an element that sets survey question/answer pairs (to be utilized in other elements in the CVP application) in the following format: QuestionID:DTMF_Value1|AnswerID1,DTMF_Value2|AnswerID2, etc.
The element that I referred to in the original post, accepts a Question ID, and then parses out the corresponding Answer ID based upon the DTMF value the user selects. The issue was I had a question answer pair in the following format:
QuestionID:DTMF_Value1|AnswerID1,<space>DTMF_Value2|AnswerID2 The space between each DTMF/AnswerID pair caused the NullPointerException. Thanks everyone for their help...
02-27-2014 06:26 AM
What are you executing at this line in your java code?
TC_AddSurveyQApair.java:121
02-27-2014 06:31 AM
And are both (test and prod) vxml servers running identical versions of
VXML Server?
Are they both configured the same way?
Maybe there's a firewall issue? Or a database that's configured in test
but not prod?
02-27-2014 06:38 AM
You are obviously triggering a condition in production that is causing null pointer to happen. It is most likely caused by the data set being different in prod. You need to check your code and fix it and put the check for null variable.
Hemal
02-27-2014 07:20 AM
I found out what the error was. At the start of the CVP application, I have an element that sets survey question/answer pairs (to be utilized in other elements in the CVP application) in the following format: QuestionID:DTMF_Value1|AnswerID1,DTMF_Value2|AnswerID2, etc.
The element that I referred to in the original post, accepts a Question ID, and then parses out the corresponding Answer ID based upon the DTMF value the user selects. The issue was I had a question answer pair in the following format:
QuestionID:DTMF_Value1|AnswerID1,<space>DTMF_Value2|AnswerID2 The space between each DTMF/AnswerID pair caused the NullPointerException. Thanks everyone for their help...
02-27-2014 08:30 AM
Glad you found the problem - those s wreak havoc all over the
place with Studio/VXML Server!
Can you mark the question as answered on the DevNet?
Thanks, Janine
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