Using openxdata as backend for ODKCollect

Hello,

does anybody have experience with using openxdata (http://
www.openxdata.org) as backend for ODKCollect?

It is mentioned as a possible backend in the ODKCOllect wiki, and they
also mention ODKCollect has a client, but I could not find any
example.

Which URL should be registered in ODKCollect?

Thanks in advance!

Mathieu

it's not a simple url that you point to. if you need it today, you can
modify odk to do the http post to openxdata. i believe they have a
javarosa module that you can point it to. if you can wait, we are
close to finalizing the openrosa specs -- that will make it pretty
easy to connect the two.

ยทยทยท On Wed, Oct 6, 2010 at 12:37, mbaudier wrote: > Hello, > > does anybody have experience with using openxdata (http:// > www.openxdata.org) as backend for ODKCollect? > > It is mentioned as a possible backend in the ODKCOllect wiki, and they > also mention ODKCollect has a client, but I could not find any > example. > > Which URL should be registered in ODKCollect? > > Thanks in advance! > > Mathieu > > -- > Post: opendatakit@googlegroups.com > Unsubscribe: opendatakit+unsubscribe@googlegroups.com > Options: http://groups.google.com/group/opendatakit?hl=en >

cc'ing the mailing list so my answers are more publicly available.

the api for getting forms and sending instances is documented at
http://bitbucket.org/javarosa/javarosa/wiki/FormListAPI?rev=f02ddae1088d.

if you want something that pulls down the files from the phone over a
usb connection, http://code.google.com/p/kobo/ works great.

if you want a very basic store, you can try something like
http://code.google.com/p/opendatakit/source/browse?repo=dropbox which
will give you a server that dumps the xml files into a directory. we
aren't actively working on that codebase, but it's a small python
script so it should be easy to tweak.

finally, i believe the aggregate code in trunk should now work in a
tomcat container running locally (backed by postgres or mysql). it's
not entirely finished, but it might give you enough functionality for
a pilot...

ยทยทยท On Thu, Oct 7, 2010 at 01:20, mbaudier wrote: > Actually I should have asked my questions differently: > > I'm doing field tests in two weeks and I would like to gather some > experience with the ODKCollect approach, in prototyping mode. > I need a backend that I can deploy in our own infrastructure (my > understanding is that ODKAggregate requires Google Apps Engine). > But this backend can be very simple: offers the forms to download, > receive them and store them (like, as files). > I could even write it my self if I could find out what is the protocol > or having a library which can. > > So any pointer to the protocol used by ODKCollect to upload/download > would be very useful! > (I can check out / import the Android code if needed) > >> it's not a simple url that you point to. if you need it today, you can >> modify odk to do the http post to openxdata. i believe they have a >> javarosa module that you can point it to. if you can wait, we are > > I thought that openXdata might be well suited. > I tried to find out about their JavaRosa capabilities, but although > they have: > > > javarosaformdownload > org.openxdata.server.servlet.JRFormDownloadServlet servlet-class> > > > javarosaformdownload > /javarosaformdownload/* > > > in their web.xml, calling > http://localhost:8080/openxdata/javarosaformdownload/ > > returns: > Wrapper cannot find servlet class > org.openxdata.server.servlet.JRFormDownloadServlet > (and I could not find this class in the jar archives either) > > I will follow up on their mailing list. > >> close to finalizing the openrosa specs -- that will make it pretty >> easy to connect the two. > > Sure, on the long run I'll be happy to use a standard approach. > > Thanks for your answer and for this great project! >
1 Like

Am in touch with d openxdata team at Fcit,makerere university.am using
odk.they working on the javarosa module for odk collect.soon it will b up
for grabs

it's not a simple url that you point to. if you need it today, you can
modify odk to do the http post to openxdata. i believe they have a
javarosa module that you can point it to. if you can wait, we are
close to finalizing the openrosa specs -- that will make it pretty
easy to connect the two.

ยทยทยท On 7 Oct 2010 00:33, "Yaw Anokwa" wrote:

On Wed, Oct 6, 2010 at 12:37, mbaudier mathieu.baudier@gmail.com wrote:

Hello,

does anybody have experience with using openxdata (http://
www.openxdata.org) as backend for ODKCollect?

It is mentioned as a possible backend in the ODKCOllect wiki, and they
also mention ODKCollect has a client, but I could not find any
example.

Which URL should be registered in ODKCollect?

Thanks in advance!

Mathieu

--
Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.comopendatakit%2Bunsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en

--
Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.comopendatakit%2Bunsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en

Thanks a lot for these detailed answers.
In between, I have tested locally with success the Google App Engine
test package.

the api for getting forms and sending instances is documented at
http://bitbucket.org/javarosa/javarosa/wiki/FormListAPI?rev=f02ddae1088d.

Exactly what I was looking for!

finally, i believe the aggregate code in trunk should now work in a
tomcat container running locally (backed by postgres or mysql). it's
not entirely finished, but it might give you enough functionality for
a pilot...

I have checked out the code with hg, imported it in Eclipse and
generated manually a war file.
I tried to deploy it in a Tomcat 6 container, but when I open
http://localhost:8080/opendatakit-aggregate/, I get:

java.lang.NullPointerException
com.google.appengine.api.users.UserServiceImpl.isUserLoggedIn(UserServiceImpl.java:89)
org.odk.aggregate.servlet.ServletUtilBase.verifyCredentials(ServletUtilBase.java:108)
org.odk.aggregate.servlet.FormsServlet.doGet(FormsServlet.java:62)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

If you're interested and you are far enough in your dev, I'm happy to
help you test the "pure" war approach with DB backend (I'm a java
developer).
In that case, maybe should we start another thread.

But otherwise, I'm really happy with the information you already
provided me, which will help me for my field trip in Central Asia.
(and my offer to help you test the WAR still holds for when I'm coming
back by the end of October...)

Thanks again for the great work!
Cheers,

Mathieu

Yeah sorry about the confusion, Aggregate 1.x, which supports the
tomcat with mysql, etc, will be released this month October 2010. We
are holding off making it publically available as we are actively
remaking the persistence layer to be something that is not backwards
compatible. We don't want to create a problems for people as we push
out new changes on a weekly basis. Once we quit making significant
changes it will be put into on the ODK google code site in a branch,
probably around Oct 18-19ish.

We are working out bugs currently. If you want more information or
want to be a beta tester contact msundt@cs.washington.edu.

Cheers,
Waylon

ยทยทยท On Thu, Oct 7, 2010 at 10:13 AM, Mathieu Baudier wrote: > Thanks a lot for these detailed answers. > In between, I have tested locally with success the Google App Engine > test package. > >> the api for getting forms and sending instances is documented at >> http://bitbucket.org/javarosa/javarosa/wiki/FormListAPI?rev=f02ddae1088d. > > Exactly what I was looking for! > >> finally, i believe the aggregate code in trunk should now work in a >> tomcat container running locally (backed by postgres or mysql). it's >> not entirely finished, but it might give you enough functionality for >> a pilot... > > I have checked out the code with hg, imported it in Eclipse and > generated manually a war file. > I tried to deploy it in a Tomcat 6 container, but when I open > http://localhost:8080/opendatakit-aggregate/, I get: > > java.lang.NullPointerException > com.google.appengine.api.users.UserServiceImpl.isUserLoggedIn(UserServiceImpl.java:89) > org.odk.aggregate.servlet.ServletUtilBase.verifyCredentials(ServletUtilBase.java:108) > org.odk.aggregate.servlet.FormsServlet.doGet(FormsServlet.java:62) > javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > If you're interested and you are far enough in your dev, I'm happy to > help you test the "pure" war approach with DB backend (I'm a java > developer). > In that case, maybe should we start another thread. > > But otherwise, I'm really happy with the information you already > provided me, which will help me for my field trip in Central Asia. > (and my offer to help you test the WAR still holds for when I'm coming > back by the end of October...) > > Thanks again for the great work! > Cheers, > > Mathieu > > -- > Post: opendatakit@googlegroups.com > Unsubscribe: opendatakit+unsubscribe@googlegroups.com > Options: http://groups.google.com/group/opendatakit?hl=en >