Chapter 3 Service Endpoint Design
do any necessary preprocessing to the request such as translating the request
content to an internal format before applying the service's business logic.
3. Determine how to delegate the request to business logic.
Once a request has been received and preprocessed, then you are ready to del
egate it to the service's business logic.
4. Decide how to process the request.
Next, the service processes a request. If the service offers a Web service inter
face to existing business logic, then the work for this step may simply be to de
termine how the existing business logic interfaces can be used to handle the
Web service's requests.
5. Determine how to formulate and send the response.
Last, you must design how the service formulates and sends a response back to
the client. It's best to keep these operations logically together. There are other
considerations to be taken into account before sending the response to the cli
6. Determine how to report problems.
Since Web services are not immune from errors, you must decide how to throw
or otherwise handle exceptions or errors that occur. You need to address such
issues as whether to throw service specific exceptions or whether to let the un
derlying system throw system specific exceptions. You must also formulate a
plan for recovering from exceptions in those situations that require recovery.
After considering these steps, start designing your Web service by devising
suitable answers to these questions:
How will clients make use of your services? Consider what sort of calls clients
may make and what might be the parameters of those calls.
How will your Web service receive client requests? Consider what kind of end
points you are going to use for your Web service.
What kind of common preprocessing, such as transformations, translations,
and logging, needs to be done?
How will the request be delegated to business logic?
How will the response be formed and sent back?