We are in the process of creating a web app which talks to a web service and not a database. I have experience building apps using the three tier (prezentation - service - dao) architecture always talking to the database.
I would want to know if I can stick to the same when the underlying system to communicate is a web service and not a database. So accordingly I will have a controller layer which constructs the domain objects out of the form attributes and passes it on to the service layer. The service layer will do some biz stuff and then the DAO layer to access the web service.
With this background are there some already laid down best practices for developing web service (java) client apps.
The wsdl has around 15 odd operations. Currently we have a service locator which gives us a ServiceInvocation object. We have to invoke methods on this ServiceInvocation to access different operations.