Saturday, February 3, 2007

In search of: Extensible web service framework

I am looking for a good approach to create a web service that is pretty generic and can be extended. Requirements:
- easy to add new functionality
- multiple clients can hit this web service, clients can be on different software versions, new available functionality should not break older clients.

I found this interesting article "A web service as a framework for simplifying development and deployment of business functions". Somewhat against the "true" tenets of designing web service contracts etc., but might fit the bill for what I need.
The input and output parameters of this generic web service are typed datasets, and the business assemblies are loaded using reflection based in a service name given in th request.
The disadvantage is that the functionality is not explicitly described in the web service contract, it needs to be implicitly known by the client and the server (business logic assembly) based on the service name passed in. This keeps the web service interface constant when new functionality needs to be added (versioning is not a problem this way).

1 comment:

Beaker said...

Becotte Solutions can take care of any issues.