[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[DotGNU]Defining Webservices
From: |
Gopal.V |
Subject: |
[DotGNU]Defining Webservices |
Date: |
Sat, 10 Nov 2001 17:11:27 +0530 |
User-agent: |
Mutt/1.2.5i |
Hi
From all the discussion I have been going over , I get the
impression that most guys confuse webservices with webservice
components.
A webservice is an abstract term used to denote a network
transparent , standard protocol service. It may be as simple
as a webmail service, but at dotGNU we are more concerned with
making the tools for producing webservices.
A webservice component on the other hand is a well defined
peice of reusable code which performs a specific service in a
network transparent method.
> The problem is with the requirement that the webservice performs
> "a single task". So something which fetches a text file by ftp
> can be a webservice, and something which converts the text file
> from DOS to Unix conventions can be a webservice, but something
> which does both cannot be considered a webservice, because it
> performs two tasks and not one???
A single task may comprise of "retrieving a text file in unix format".
Does that answer this ?. The joke apart, isolating service into basic
peices and assembling them later into self sufficent components is better.
For example a HTML rendering component and a HTTP fetch object may be
combined to get a minimal browser. The rendering component in itself may
itself be composed of text,link, and image renderers. So in the end this
code benifits , the programmer who is writing an image viewer. This was
however a code reuse approach followed by BONOBO. The component can be
queried about the services (yes I said services) offered by the component
using CORBA (as per IDL). This ensures that the components can be used
in a black box method.
But following the successful paradigm of *nixes ( and !*nixes), a
number of peices, which when joined with the right glue, is worth more
than the sum of its peices, we have to find the right glue as well as
make the peices according the glue. Pipes,Unix Sockets,TCP,IPC etc form
the glue in GNU. We have a number of options like XMLRPC,SOAP,WSDL,CORBA
etc to use as the glue. We have to choose the glue on the basis of the
webservice. Since we don't want to lose any quarter to .NET, we have to
provide support for maximum interfaces. We have to start with the most
popular glues CORBA for local and SOAP for network communication. Since
we have ORBIT we have really to strive to integrate SOAP to CORBA.
Speaking of browser based webservices, the *BEST* browser based example
is the XVnc java applet client. It literaly bring the X-desktop to the
browser (at least) in a very interactive way.
Gopal.V
--
//===<=>===\\
|| GNU RULEZ ||
\\===<=>===//
- [DotGNU]Defining Webservices,
Gopal.V <=
- Re: [DotGNU]Defining Webservices, Norbert Bollow, 2001/11/10
- Re: [DotGNU]Defining Webservices, Daniel E Baumann, 2001/11/10
- Re: [DotGNU]Defining Webservices, Gopal.V, 2001/11/11
- Re: [DotGNU]Defining Webservices, Daniel E Baumann, 2001/11/12
- Re: [DotGNU]Defining Webservices => Language, Gopal.V, 2001/11/12
- [DotGNU]Python (was: Defining Webservices => Language), Norbert Bollow, 2001/11/12
- Re: [DotGNU]Python (was: Defining Webservices => Language), David Sugar, 2001/11/13
- Re: [DotGNU]Python (was: Defining Webservices => Language), Gopal.V, 2001/11/14
- Re: [DotGNU]Defining Webservices => Language, Daniel E Baumann, 2001/11/12
- Re: [DotGNU]Defining Webservices => Language, Norbert Bollow, 2001/11/12