В общем, я стараюсь проектировать свои веб-сервисы таким образом, чтобы они возвращали какой-то флаг, который указывает, была ли техническая / функциональная ошибка или нет.
Кроме того, я пытаюсь вернуть сложный объект для результата, а не просто строку, чтобы я мог вернуть такие вещи, как:
результат-> Код = "ОБСЛУЖИВАНИЕ"
result-> MaintenanceTill = "2010-10-29 14:00:00"
так что для веб-сервиса, который должен получить мне список dataEntities, я верну что-то вроде:
<result>
<result>
<Code>OK</Code>
</result>
<functionalResult>
<dataList>
<dataEntity>A</dataEntity>
</dataList>
</functionalResult>
</result>
поэтому каждый сбой, который может произойти за моим веб-сервисом, скрыт в результате ошибки.
единственные исключения, о которых должны заботиться разработчики при обращении к моему веб-сервису, - это исключения или ошибки, которые могут возникнуть перед веб-сервисом.