We're working on connecting ODK-Voice and OpenMRS. So the plan is to create
an XForm in the OpenMRS Xforms module, place it in ODK-Voice, have ODK-Voice
make the call through Voxeo and then report the results back to OpenMRS.
I've created the first XForm in the OpenMRS XForms module, but when I try to
upload it to ODK-Voice, it gives me the error below, which is similar to the
error one gets if you try to upload without having selected a form, which
I've also copied below.
When looking at the XML from OpenMRS (ODK-Voice test form from OMRS.xml), I
see that the format is different from the XML which I got from Adam (ODK
test form 24nov10.xml). I'm attaching both of them here just in case.
So, I wanted to ask the best way to get the XML's into ODK-Voice so that
we'll be able to plug them back into OpenMRS.
Should I be using the OpenMRS XForms module to create them?
Do I need to change the formatting of the OpenMRS XML to fit that of Adam's
XML? if not, what should I do to not get the NullPointerException.
Thanks and apologies for the long questions,
Joaquin
Error when uploading an XML from OpenMRS Xforms module
java.lang.NullPointerException
at org.odk.voice.xform.FormHandler.getFormTitle(FormHandler.java:498)
at org.odk.voice.servlet.XFormUploadServlet.doPost(XFormUploadServlet.java:124)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:636)
Error if try to upload without selecting a file
java.lang.NullPointerException
at org.odk.voice.storage.FormLoader.getFormHandler(FormLoader.java:32)
at org.odk.voice.servlet.XFormUploadServlet.doPost(XFormUploadServlet.java:123)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:636)
ODK test form 24nov10.xml (1.95 KB)
ODK-Voice test form from OMRS.xml (9.15 KB)