SOAP Web Services

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

SOAP Web Services

Tim Allen-2

Hi all,

 

Is anyone able to tell me the best way to call a SOAP web service from an app developed on Maemo?

 

Thanks in advance,

Tim Allen

 

 


_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers
Reply | Threaded
Open this post in threaded view
|

Re: SOAP Web Services

daniel wilms
hi,

I don't know, how you've created your app, but you could do it with Python. There is a project, which does the parsing for you [1] and which helps u setting up the client with the help of the WSDL file. But it depends on what you want to do. If you only have one specific service, ZSI is a bit too much I guess. You could directly create the SOAP envelope and send it with urllib2 or httplib and then parse the response with python-xml.

if this does not help, give a few more details about your app ;)

[1] http://pywebsvcs.sourceforge.net/


daniel
_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers
Reply | Threaded
Open this post in threaded view
|

RE: SOAP Web Services

Tim Allen-2
Hi Daniel,

Thanks a lot for the reply.

It will most probably just be written in C, but we'd consider Python if the
advantages were really there.  Do you think Python is quick to learn and how
do you think it compares for making a simple GTK app?

It is going to be an application that could be used by truck drivers to
declare the mass they have on board their vehicle.  This would be notified
to the back end via a web service call.  In time they will also be able to
declare their rest breaks, etc, using the app.

Directly creating the SOAP envelope and parsing the reply doesn't sound like
much fun - do you think it would take a lot of time to get right?

What's ZSI?

Cheers,
Tim.

-----Original Message-----
From: [hidden email]
[mailto:[hidden email]] On Behalf Of daniel wilms
Sent: Monday, 20 April 2009 3:42 PM
To: [hidden email]
Subject: Re: SOAP Web Services

hi,

I don't know, how you've created your app, but you could do it with Python.
There is a project, which does the parsing for you [1] and which helps u
setting up the client with the help of the WSDL file. But it depends on what
you want to do. If you only have one specific service, ZSI is a bit too much
I guess. You could directly create the SOAP envelope and send it with
urllib2 or httplib and then parse the response with python-xml.

if this does not help, give a few more details about your app ;)

[1] http://pywebsvcs.sourceforge.net/


daniel
_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers

_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers
Reply | Threaded
Open this post in threaded view
|

Re: SOAP Web Services

daniel wilms
Hi Tim,

I dont know how much experience you have with C or Python, but I have
written a bit more complex GTK app in Python for the tablets and you get
really fast there and it was fairly simple to use. The parsing is as
well pretty easy, I could show you an example if needed. Python-XML
comes directly with the python-runtime and you can get the essential
parts out of the SOAP message really fast. ZSI is a python module for
web service implementations. The client can be built automatically when
u have a service-description in WSDL.

I would suggest to write the app in Python and create/parse the messages
by . You can tell me how you've decided and when you need help I could
put an example in the wiki.

Cheers Daniel

ext Tim Allen wrote:

> Hi Daniel,
>
> Thanks a lot for the reply.
>
> It will most probably just be written in C, but we'd consider Python if the
> advantages were really there.  Do you think Python is quick to learn and how
> do you think it compares for making a simple GTK app?
>
> It is going to be an application that could be used by truck drivers to
> declare the mass they have on board their vehicle.  This would be notified
> to the back end via a web service call.  In time they will also be able to
> declare their rest breaks, etc, using the app.
>
> Directly creating the SOAP envelope and parsing the reply doesn't sound like
> much fun - do you think it would take a lot of time to get right?
>
> What's ZSI?
>
> Cheers,
> Tim.
>
> -----Original Message-----
> From: [hidden email]
> [mailto:[hidden email]] On Behalf Of daniel wilms
> Sent: Monday, 20 April 2009 3:42 PM
> To: [hidden email]
> Subject: Re: SOAP Web Services
>
> hi,
>
> I don't know, how you've created your app, but you could do it with Python.
> There is a project, which does the parsing for you [1] and which helps u
> setting up the client with the help of the WSDL file. But it depends on what
> you want to do. If you only have one specific service, ZSI is a bit too much
> I guess. You could directly create the SOAP envelope and send it with
> urllib2 or httplib and then parse the response with python-xml.
>
> if this does not help, give a few more details about your app ;)
>
> [1] http://pywebsvcs.sourceforge.net/
>
>
> daniel
> _______________________________________________
> maemo-developers mailing list
> [hidden email]
> https://lists.maemo.org/mailman/listinfo/maemo-developers
>
>  

_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers
Reply | Threaded
Open this post in threaded view
|

Re: SOAP Web Services

Dave Neary
In reply to this post by Tim Allen-2
Hi Tim,

Tim Allen wrote:
> It will most probably just be written in C, but we'd consider Python if the
> advantages were really there.  Do you think Python is quick to learn and how
> do you think it compares for making a simple GTK app?

Python syntax is pretty easy, and there are some helper classes
available that make it *very* easy to write simple GTK+ applications for
it with Glade and GtkBuilder: http://www.pixelbeat.org/talks/pygtk/

> Directly creating the SOAP envelope and parsing the reply doesn't sound like
> much fun - do you think it would take a lot of time to get right?

Since SOAP = "Simple Object Access Protocol", it tends to be easier to
do in object oriented languages, but there's noting preventing you from
parsing SOAP messages in C. A quick search found the following:
* http://sourceforge.net/projects/csoap/
* http://www.cs.fsu.edu/~engelen/soap.html
* http://www.sqldata.com/SoapClient/SoapClient30.htm

The first one is pure C using libxml2, the second and third are C++.
gSOAP also supports pure C applications.


I suggest that getting your SOAP API right is more important than the
choice of client/server language. If you are happier writing your
application in C, and it's more suitable for all the rest of your
application, then do that by all means. The SOAP client calls will be a
smallish part of your app. One of the advantages of using SOAP is that
you don't need the same language on the client & server side of the
operation.

Make sure you spend a lot of time ensuring that your object model &
functions for the SOAP part are very well defined & documented
beforehand. Generating a WSDL file is very good for this - and with a
WSDL file, most SOAP libraries can generate skeleton code for you that
parses function calls into messages, which substantially reduces your work.

In the past, I've used Axis http://ws.apache.org/axis/ for SOAP, which I
found *really* easy. You're literally just calling methods of Java
objects and the SOAP stuff is completely abstracted away, once you have
the WSDL file for the service. I assume the same would be true in
Python, and while things might be slightly more complicated in C, I
don't imagine that the difference would be sufficient to change the
language you're using for the entire project.

Cheers,
Dave.

--
maemo.org docsmaster
Email: [hidden email]
Jabber: [hidden email]

_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers
Reply | Threaded
Open this post in threaded view
|

Re: SOAP Web Services

daniel wilms
In the case of Python the handling of the SOAP messages is not sooo nice, but when you only have to set up the client it is not really necessary I guess as the data can be really easily parsed manually without a lot of expertise.

When you are not so experienced in building GUI applications, it might be worth as well to have a look at Qt [1], Qt for maemo [2] and its python bindings [3] with really good tutorials [4]. I haven't used it so much, but it seems to be one of the easier way to build applications with a GUI for the devices. It would be nice to follow up what you have decided to use.

[1] http://www.qtsoftware.com/
[2] http://qt4.garage.maemo.org/
[3] http://pyqt.garage.maemo.org/index.html
[4] http://diotavelli.net/PyQtWiki/Tutorials

Cheers Daniel
_______________________________________________
maemo-developers mailing list
[hidden email]
https://lists.maemo.org/mailman/listinfo/maemo-developers