Вы находитесь на страницах старой версии сайта.
Переходите на новую версию Interface.Ru

Управление Web-сервисами уже здесь!

© Майк Лехманн
Источник: журнал "Oracle magazine", no.6, 2004
Перевод: Oracle Magazine RE

Возможности управления Web-сервисами

Основные возможности управления Web-сервисами, которые можно конфигурировать в Oracle Application Server 10g Release 10.1.3, таковы:

Они дополняются средой мониторинга для действий, связанных с Web-сервисами: запросов (requests), ответов (responses) и сообщений об ошибочных ситуациях (faults).

Эти возможности полностью конфигурируемы в среде управления Oracle Application Server Control. Разработчики смогут также декларативно сконфигурировать их до размещения в Oracle JDeveloper. Рисунок 1 показывает административную, входную страницу управления Web-сервисами в среде Oracle Application Server Control. Эта среда (Application Server Control) в Oracle Application Server 10g Release 10.1.3 может быть типовым образом вызвана заданием URL http:// :1810/ascontrol.

Рис. 1 Конфигурирование управления Web-сервисами в Oracle Application Server Control

Рис. 1 Конфигурирование управления Web-сервисами в Oracle Application Server Control

Понимание "движущихся частей"

Чтобы понять как использовать эти возможности, я прежде всего должен дать обзор "движущихся частей" (moving parts) в среде управления Release 10.1.3. Рисунок 2 показывает три основных компонента этого продукта, которые и составляют решение: компонент этапа проектирования (the design time) с Oracle JDeveloper, компонент этапа выполнения (the runtime) с Release 10.1.3 и среда управления с Oracle Application Server Control.

Рис. 2 Конфигурирование управления в перспективе

Рис. 2 Конфигурирование управления в перспективе

Обратите внимание, что на этом рисунке между консолями компонент этапов проектирования и выполнения находится файл wsmgmt.xml. Это файл конфигурирования политик к Web-сервисам (Web services policy configuration file) для Oracle Application Server, позволяющий администраторам-пользователям Application Server Control устанавливать политики аудита, журнализации, надежности и безопасности.

Способ, характерный для разработчика, конфигурирования этого файла политик заключается в декларировании политик управления в файле oracle-webservices .xml. Этот файл oracle-webservices.xml является специфичным для сервера приложений соединением (binding) к инфраструктуре Oracle. Этот файл дополняется стандартным для JAX-RPC файлом webservices.xml, который определяет платформно-независимое поведение Web-сервисов.

Изучение рисунка 2 слева направо показывает, как разработчик должен использовать такой инструмент, как Oracle Jdeveloper или его аналог с интерфейсом типа командная строка Web Services Assembler, чтобы сформировать (to package up) файл типа архив предприятия (enterprise archive (EAR), содержащий политики из oracle-webservices.xml. Затем, после развертывания в инфраструктуре Oracle Application Server 10g Release 10.1.3, эти политики будут автоматически зарегистрированы в файле политик этапа выполнения wsmgmt.xml.

В дополнение к конфигурированию политик на стороне сервера часто также необходимо такое же конфигурирование на стороне клиента. Oracle предоставляет опцию для администраторов, чтобы они могли бы получить свои конфигурации политик на стороне сервера в синтаксисе WSDL, чтобы соответствующие средства на стороне клиента могли использовать это публично доступный контракт и автоматически создать в соответствии с этими политиками клиент.

Конфигурирование политик

Политики для Web-сервисов устанавливаются в иерархии, соответствующей структуре WSDL. Сервисы, как правило, содержат один или несколько портов, которые содержат связи (bindings) к одной или более операциям. Чтобы соответствовать такой структуре, политики управления могут быть установлены на уровне порта или операции.

Чтобы получить представление об этих политиках, давайте изучим a snippet файла wsmgmt.xml для Web-сервиса "Кадры":

1  <port app="HR-Emp-WS" 
2        web="WebServices" 
3        service="HRService" 
4        port="EmpInterfacePort">
5   <runtime enabled="security,auditing">
6    <security>
7     <inbound>
8      <verify-username-token 
              password-type="DIGEST" 
9             require-nonce="false" 
10            require-created="false"/>
11     <verify-signature/>
12     <decrypt/>
13    </inbound>
14   </security>
15   <reliability>
16     <ack-interval value="6"/>
17    <order-interval value="6"/>
18    <cleanup-interval value="60"/>
19    <ack-limit value="60"/>
20    <max-age value="60"/>
21    <repository type="jdbc"           
       jndiLocation="jdbc/SCOTTCoreDS"/>
22   </reliability>
23  </runtime>
24   <operations>
25    <operation name="getEmpSalary">
26    <runtime>
27     <auditing request="true" 
         response="false" fault="true"/>
28    </runtime>
29   </operation>
30  </operations>
31 </port>

Прежде всего, заметим на строке 5, что политики могут быть включены (enabled) или выключены (disabled). В этом примере политики безопасности и аудита включены, в тоже время политика надежности, заданная в строках 15-22 отключена только тем, что она не упомянута как атрибут, включенный для этапа выполнения.

Далее, в строках 6-14 устанавливается политика безопасности для всех операций порта EmpInterfacePort сервиса HRService — политика, которая требует, чтобы для каждой операции был заданы provided with a username and password authentication token.

И наконец, в строках 26-28 приведен пример политики на уровне операции для аудита, showing that requests and faults are audited on the getEmpSalary operation but responses are not. Политики безопасности также могут установлены на уровне операции.

Разделение проблем

Из вышеприведенного рассмотрения ясно, что подход к управлению Web-сервисами с применением средств Oracle Application Server вышел за рамки программистского подхода к более административному, декларативному, на основе политик подходу.

Это не означает, что в данном случае навыки программирования разработчику не нужны, они необходимы для разработки "крюков" (hooks) для обработчиков стандарта JAX-RPC. Но подход на основе политик обеспечивает логическое и физическое разделение проблем для тех организаций, которые хотят воспользоваться его преимуществами. Он дает возможность разработчикам сфокусироваться на построении бизнес-функциональности Web-сервисов и администраторам на определении операционной политики к Web-сервисам.

Мы рассмотрим подробно эти новые возможности управления Web-сервисами в следующих нескольких статьях и научимся определять, где такое разделение очевидно и где находятся естественные точки соприкосновения. Чтобы на практике оценить сказанное в этой статье, скачайте Oracle Application Server 10g Release 10.1.3 Developer Preview из сети OTN, установите пример Web-сервиса "Кадры" с интерфейсом JAX-RPC, и затем проверьте новые возможности управления Web-сервисами в Oracle Application Server Control.

Дополнительная информация

За дополнительной информацией обращайтесь в компанию Interface Ltd.

Обсудить на форуме Oracle

Рекомендовать страницу

INTERFACE Ltd.
Телефон/Факс: +7 (495) 925-0049
Отправить E-Mail
http://www.interface.ru
Rambler's Top100
Ваши замечания и предложения отправляйте редактору
По техническим вопросам обращайтесь к вебмастеру
Дата публикации: 31.03.06