Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Веб-сервіси і засоби опису

Веб-сервіс (веб-служба) – ПС, що ідентифікується рядком URI (Unified Resource Identifier, універсальний ідентифікатор ресурсів), ресурси котрої (властивості та методи) описані за допомогою спеціальної мови. Доступ до ресурсів такої системи здійснюється через протокол SOAP (Simple Object Access Protocol, простий протокол доступу до об’єктів), який представляє собою особливим чином сформульовані XML-запити, що передаються за допомогою інтернет-протоколу високого рівня (найчастіше HTTP). За своєю архітектурою веб-сервіси нагадують класи об’єктно-орієнтованих МП (і в межах Java EE генеруються на основі класів), проте є і певні відмінності. Ключовим поняттям для веб-сервісу є повідомлення (message), яке складається з однієї чи кількох змінних. Замість методів класів у веб-сервісах використовуються операції (operation), які характеризуються вхідним і вихідним повідомленнями. Після виклику операції змінні, що входять до вхідного повідомлення, отриманого по протоколу SOAP, інтерпретуються як параметри відповідного методу класу, який лежить в основі сервісу. Після завершення роботи методу формується вихідне повідомлення, що містить повернуте методом значення яке після цього за допомогою SOAP відправляється клієнту. Така архітектура сервісу дозволяє викликати його методи асинхронно.

Мова WSDL. Для опису загальнодоступних ресурсів веб-сервісу використову-ється мова WSDL (Web Service Definition Language) на основі XML; середовище програмування Eclipse дозволяє автоматичне створення таких описів на основі класів Java. У мові визначені наступні основні типи даних: рядки (xsd:string), цілі числа (xsd:int, xsd:long, xsd:short, xsd:integer, xsd:decimal), числа з плаваючою комою (xsd:float, xsd:double), логічний тип (xsd:boolean), послідовності байт (xsd:base64Binary, xsd:hexBinary), дата і час (xsd:time, xsd:date, xsd:g), об’єкти (xsd:anySimpleType). В якості змінних для повідомлень також можна використовувати послідовності, створені з фіксованої кількості змінних простих типів (це відповідає методам з декількома вхідними параметрами). Типовий WSDL-файл має структуру, як на рис. 14.

<wsdl:definitions targetNamespace="http://webservice.isofts.kiev.ua">

<wsdl:types><schema elementFormDefault="qualified"

targetNamespace="http://webservice.isofts.kiev.ua">

<element name="add"><complexType><sequence>

<element name="x" type="xsd:int"/>

<element name="y" type="xsd:int"/>

</sequence></complexType></element>

<element name="addResponse"><complexType><sequence>

<element name="addReturn" type="xsd:int"/>

</sequence></complexType></element>

<element name="subtract"><complexType><sequence>

<element name="x" type="xsd:int"/>

<element name="y" type="xsd:int"/>

</sequence></complexType></element>

<element name="subtractResponse"><complexType><sequence>

<element name="subtractReturn" type="xsd:int"/>

</sequence></complexType></element>

</schema></wsdl:types>

<wsdl:message name="addRequest">

<wsdl:part element="impl:add" name="parameters"></wsdl:part>

</wsdl:message>

<wsdl:message name="subtractResponse">

<wsdl:part element="impl:subtractResponse" name="parameters"></wsdl:part>

</wsdl:message>

<wsdl:message name="subtractRequest">

<wsdl:part element="impl:subtract" name="parameters"></wsdl:part>

</wsdl:message>

<wsdl:message name="addResponse">

<wsdl:part element="impl:addResponse" name="parameters"></wsdl:part>

</wsdl:message>

<wsdl:portType name="SampleMath">

<wsdl:operation name="add">

<wsdl:input message="impl:addRequest" name="addRequest"></wsdl:input>

<wsdl:output message="impl:addResponse" name="addResponse"> </wsdl:output>

</wsdl:operation> <wsdl:operation name="subtract">

<wsdl:input message="impl:subtractRequest" name="subtractRequest"></wsdl:input>

<wsdl:output message="impl:subtractResponse" name="subtractResponse">

</wsdl:output> </wsdl:operation>

</wsdl:portType>

<wsdl:binding name="SampleMathSoapBinding" type="impl:SampleMath">

<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

<wsdl:operation name="add"><wsdlsoap:operation soapAction=""/>

<wsdl:input name="addRequest"><wsdlsoap:body use="literal"/></wsdl:input>

<wsdl:output name="addResponse"><wsdlsoap:body use="literal"/></wsdl:output>

</wsdl:operation>

<wsdl:operation name="subtract"><wsdlsoap:operation soapAction=""/>

<wsdl:input name="subtractRequest"><wsdlsoap:body use="literal"/></wsdl:input>

<wsdl:output name="subtractResponse"><wsdlsoap:body use="literal"/></wsdl:output>

</wsdl:operation>

</wsdl:binding> <wsdl:service name="SampleMathService">

<wsdl:port binding="impl:SampleMathSoapBinding" name="SampleMath">

<wsdlsoap:address location="http://localhost:8080/webservice/services/SampleMath"/>

</wsdl:port>

</wsdl:service></wsdl:definitions>

Рис. 5.14. WSDL-опис простого веб-сервісу

 


Читайте також:

  1. Cинтаксис опису змінних
  2. II. Основні засоби
  3. L2.T4/1.1. Засоби періодичного транспортування штучних матеріалів.
  4. L2.T4/1.2. Засоби безперервного транспортування матеріалів. Транспортери.
  5. L2.T4/1.3. Засоби дозування сипучих матеріалів.
  6. L3.T4/2. Засоби переміщення рідин.
  7. V Засоби навчання
  8. Адреноблокуючі засоби.
  9. Акустичний контроль приміщень через засоби телефонного зв'язку
  10. Акустичні засоби|кошти| захисту
  11. Апаратні засоби
  12. Апаратні засоби ЕОМ




Переглядів: 699

<== попередня сторінка | наступна сторінка ==>
Опис веб-технології Java EE | Приклад взаємодії Java і MS.NET через веб-сервіси

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.004 сек.