'

Введение в Web Services

Понравилась презентация – покажи это...





Слайд 0

12/25/2015 Web Services Введение в Web Services Галактионов В.В galakt@jinr.ru ОИЯИ, Дубна


Слайд 1

12/25/2015 Web Services 1. Grid и Web Services роль WS в Grid-технологии 2. Реализации Grid Globus Toolkit: GT2, GT3 3. GT3 и OGSA WS-технология в Grid 4. GT4 и WSRF


Слайд 2

12/25/2015 Web Services “Основная причина появления Web-сервисов - неспособность существующих технологий, таких как объектные системы типа COM семейства Microsoft и стандарты OMG CORBA, в полной мере обеcпечить совместимость (интер- операбельность) разнообразных программных продуктов для неоднородных распределенных систем. “


Слайд 3

Web Services 1. Распределенные системы


Слайд 4

2. Отношения “клиент-сервер” Client Server Server Client


Слайд 5

3. Технологии для распределенных систем Socket- программирование . . . . . . . . . . . . . . . . . . . . . . . ----- объектное программирование ------------ COM/DCOM (Microsoft) RMI (Sun Microsystems) CORBA (OMG, Object Management Group) Web Services (W3C) Tds = Message + Protocol


Слайд 6

4. Объектно-ориентированные системы 4.1. Объектно-ориентированное программирование Локальные объекты: Math m = new Math(); double d1 = m.PI + m.E; double d = m.pow(d1, 2.0); float f = (float)m.sqrt(m.sin(d));


Слайд 7

CORBA-объекты (VisiBroker): ORB orb = ORB.init(); Math m = MathHelper.bind(orb, “MathServer”); double d1 = m.PI +m.E; double d = m.pow(d1, 2.0); float f = (float)m.sqrt(m.sin(d));


Слайд 8

4.2. Объектно-ориентированные распределенные системы Client Server Registry Object Interface IDL 1. Define interface 2. Implementation 3. Define Object 4. Publishing 5. Find 6. Interaction Interface Definition Language


Слайд 9

5. Web Services - сервис-ориентированные распределенные системы Discovery Agency Service Description Service Provider Service Description Service Service Requestor Client


Слайд 10

XML-технология


Слайд 11

Элементы XML-технологии: Грамматика – DTD, XML Schema Синтаксический анализ (well formed, valid) Объектная модель DOM XML-преобразования XSLT


Слайд 12

5. Стандарты Web Services SOAP - Simple Object Access Protocol WSDL – Web Services Definition Language Discovery Agency (repository): UDDI, ebXML, WS-Inspection (WSIL), JAXR


Слайд 13

SOAP – правила построения сообщений в XML-формате и передача их по протоколу HTTP <?xml version="1.0"?> <SOAPMessage> <SOAPPart> <SOAPEnvelope> <SOAPHeader> . . . . . . . . . . . </SOAPHeader> <SOAPBody> . . . . . . . . . . . </SOAPBody> </SOAPEnvelope> </SOAPPart> </SOAPMessage>


Слайд 14

Программирование SOAP-сообщений SOAPConnectionFactory scf = SOAPConnectionFactory.newInstance(); SOAPConnection con = scf.createConnection(); MessageFactory mf = MessageFactory.newInstance(); SOAPMessage msg = mf.createMessage() SOAPPart sp = msg.getSOAPPart(); SOAPEnvelope envelope = sp.getEnvelope(); SOAPHeader hdr = envelope.getHeader(); SOAPBody bdy = envelope.getBody(); URL urlEndpoint = new URL(to); SOAPMessage reply = con.call(msg, urlEndpoint);


Слайд 15

I. Режим передачи данных в SOAP-сообщениях Синхронные сообщения


Слайд 16

Асинхронные сообщения


Слайд 17

II. Режим RPC – вызов удаленных процедур Stub stub = createProxy(); CarRentalQuotes objRef = (CarRentalQuotes)stub; String[] country = objRef.getCountries(); String[] loc = objRef.getLocations(country[0]); String[] curr = objRef.getCurrencies(); String[] cars = objRef.getCarTypes();


Слайд 18

Диаграмма конвертирования RPC-вызовов в SOAP-сообщения


Слайд 19

WSDL – Web Services Definition Language <?xml version="1.0" encoding="UTF-8"?> <definitions name="MyHello" targetNamespace="http://com.test/wsdl/MyHello" xmlns:tns="http://com.test/wsdl/MyHello" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <types/> <message name="HelloIF_sayHello"> <part name="String_1" type="xsd:string"/> </message> <message name="HelloIF_sayHelloResponse"> <part name="result" type="xsd:string"/> </message> <portType name="HelloIF"> <operation name="sayHello" parameterOrder="String_1"> <input message="tns:HelloIF_sayHello"/> <output message="tns:HelloIF_sayHelloResponse"/> </operation> </portType <binding name="HelloIFBinding" type="tns:HelloIF"> <operation name="sayHello"> <input> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://com.test/wsdl/MyHello"/> </input> <output> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://com.test/wsdl/MyHello"/> </output> <soap:operation soapAction=""/> </operation> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/> </binding> <service name="MyHello"> <port name="HelloIFPort" binding="tns:HelloIFBinding"> <soap:address location="REPLACE_WITH_ACTUAL_URL"/> </port> </service> </definitions>


Слайд 20

Регистрация сервисов UDDI(Universal Description, Discovery and Integration) - регистрация вычислительных или коммерческих услуг в формализованном XML-формате. Желтые Страницы - деловые предложения и услуги. Белые Страницы - контактная информацию. Зеленые Страницы - технические детали. UDDI предоставляет свои услуги также в формате Web-служб, и к нему можно обращаться за полученим сервиса стандартными средствами, например SOAP-сообщениями и другие (http://www.uddi.org/solutions.html).


Слайд 21

Существует ряд открытых для пользователей UDDI-серверов, как для промышленного использования (UBR, UDDI Business Registry), так и для исследовательских целей (тестирования): SAP UDDI Test Business Registry (http://udditest.sap.com/); IBM UBR Node (http://uddi.ibm.com/); Microsoft UBR Node (http://uddi.microsoft.com/); Microsoft Test Node (http://test.uddi.microsoft.com/); и другие (http://www.uddi.org/solutions.html).


Слайд 22

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


Слайд 23

Реализации технологий Web Services SOAP Toolkit (Microsoft) Apache Axis, WebSphere Application Server (IBM), JWSDP (Sun).


Слайд 24

http://www.xmethods.net/ve2/ViewListing.po;jsessionid=JQ4xjIisC91JCSafUI-E8NsY(QhxieSRM)?serviceid=175374


Слайд 25


×

HTML:





Ссылка: