Web-сервисы – это часть бизнес-логики, размещенная в Internet, кот обеспечив доступ по стандартным Интернет протоколам (напр, HTTP).
Документоориентированным(document-style) подход - тип SOAP-разработки, в котором документы XML являются основным инструментом взаимодействия между вызывающим объектом и web-сервисом. В случае документоориентированного программирования клиент передает web-сервису документ XML, который обрабатывается на сервере. Здесь также на макроуровне клиент передает запрос SOAP и получает ответ SOAP. В документоориентированном SOAP-программировании клиенту не нужно сериализовать вызов Java и его аргументы в документ XML. И обратно, серверу не нужно десериализовать документ XML в вызов Java и типы данных. В документоориентир програ-ии в обмене участв документ XML и значение кажд эл-та интерпретируется участвующими во взаимодействии сторонами. Вдобавок к этому клиент и web-сервис могут объединить в запрос и ответ несколько документов.
Т.к. процесс сериализации/десериализации отсутствует, приложения, разработанные посредством использования документоориентирвоанного программирования, должны быть более быстрыми, чем их RPC-аналоги. Но это не всегда так, т.к. при документоориентированном програм-ии сериализация зависит от разработчика, т.к. в некот момент может понадобиться преобразовать наши данные Java в XML и наоб. А также задействованные документы XML потенциально м. б. больше, чем простые типы запрос-ответ.
Документоориентированное SOAP-программирование подходит, когда мы хотим осуществлять обмен данными между двумя и более сторонами. Это особенно справедливо в случае, когда у нас уже есть документ XML, представляющий данные, т.к. мы можем обмениваться самим документом XML в исходном виде без необходимости преобразовывать его структуры данных Java. Отсутствие шагов сериализации/десериализации упрощает разработку и ускоряет обработку данных.
Основные объекты и алгоритмы документно-ориентир взаимодействия Клиентское приложение создает экземпляр объекта SOAPClient. SOAPClient читает файлы описания методов веб-сервиса (WSDL). Эти файлы могут храниться и на клиенте. Клиентское приложение вызывает метод сервиса. SOAPClient формирует пакет запроса (SOAP Envelope) и отправляет на сервер.
Пакет принимает серверное приложение Listener, создает объект SOAPServer и передает ему пакет запроса. SOAPServer читает описание веб-сервиса, загружает описание и пакет запроса в XML DOM деревья. SOAPServer вызывает метод объекта/приложения, реализующего сервис.Результаты выполнения метода или описание ошибки конвертируются объектом SOAPServer в пакет ответа и отправляются клиенту.
Объект SOAPClient проводит разбор принятого пакета и возвращает клиентскому приложению результаты работы сервиса или описание возникшей ошибки