There are reason's you'd do a web service versus using ES:
- Other app will use the service. The whole reason for web services (a big one anyway) is interoperability. I've just spent the last two weeks working on an interoperability demo for CMS (Centers for Medicare & Medicaid Services), showing how a .NET app can talk to a J2EE web service and a JSP app can talk to .NET web services and how you can swap services that use the same WSDL. This is when you'd want a web service.
- er...
- um....
- Oh...you like banging your head against your desk, but feel bad unless there appears to be a good reason to do so*.
On the other hand, you might consider ES if:
- Your users are remote, i.e. not on the local LAN, but the users will be using
your app. You'd use ES instead of a vpn or a web service. It is faster, secure, and...takes about 20 minutes to implement (assuming you need to read the help file first and install it on the server and setup the datasources.config file)
Compare that to implementing using a web service and the price is cheap.
If you are a licensed SF user, you have a 2 user dev license for ES and you can try it out. Put it on a remote server, if you can. Try it out. It's sweet. When I was testing it, I'd forget that I was using it, it was so close to being as fast as local access.
NOTE: read how the license works, it is licensed to a specific server/virtual folder on that server/specific MAC address, so you need to decide were to use the dev licenses.