Hi All,
Q - Does it make sense to use web service as a facade to my
Application Server for integration with outside world while retaining
an alternate route for the clients written by me?
Context - We have a solution comprising of
1. Backend Database
2. Application Server (AS) that talks to the DB and offers services to
the client
3. Clients talking to the AS. There can be different kinds of client
viz. a rich win32 power client installed in LAN, a web client written
using asp.net and finally external components written to integrate
with our system.
Our (win32/web)clients communicate with the AS using XML document,
however this is a native construct understood by the AS and the
client. The code in the AS decomposes the xml to data structures and
the Business objects work with this datastructure.
Now in order to provide integration point to outside world I was
thinking of writing a web service. In the web method I would take well
defined parameters and construct the same data structure and delegate
the call to the business objects in the AS.
I am not sure if this is the right approach as it means maintaining
two interfaces. However, the reason I am keen on keeping the xml
document route is the flexibility that I get. I know that the document
is coming from one of our clients so its going to be well formed, the
tags can be as terse as possible. I can make certain assumptions from
security/validation perspective. I can batch calls and have my AS
iterate over each operation and provide response. I would keep my web
methods simple/granular while the document route could be more complex
and chunky.
Would appreciate any thoughts for/against what I am doing.
Thanks for your patience.
Pranav