Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dimuthu Leelarathne Software Engineer WSO2

Similar presentations


Presentation on theme: "Dimuthu Leelarathne Software Engineer WSO2"— Presentation transcript:

1 Dimuthu Leelarathne Software Engineer WSO2
Introduction to WSDL 2.0 Dimuthu Leelarathne Software Engineer WSO2

2 WSDL What is WSDL? What is new in WSDL 2.0?
Describes a service in two stages Abstract – The service contract Concreate – ”How” and ”Where”

3 WSDL 2.0 – 3 Specifications Part 0: Primer
Introduction to main features of the language. Part 1: Core Describes WSDL2.0 using component model Part 2: Adjuncts MEPs and Bindings

4 WSDL 2.0 Vs. WSDL 1.1 At a glance definition renamed to description.
portType renamed to interface. port renamed to endpoint. message elements are removed.

5 WSDL file

6 WSDL file ABSTRACT CONCRETE

7 WSDL2.0 components Top level components type interface binding service
import/include documentation

8 WSDL file <description targetNamespace="xs:anyURI" >
<documentation />* [ <import /> | <include /> ]* <types />? [ <interface /> | <binding /> | <service /> ]* </description>

9 documentation A brief description of a wsdl document
<documentation>This wsdl describes my Echo Service</documentation>

10 types Defines the data types used in exchanged messages.
Use xml schema

11 types example

12 interface A named set of abstract operations and abstract messages.
<interface name="xs:NCName" extends="list of xs:QName"? styleDefault="list of xs:anyURI"? > <documentation />* [ <fault /> | <operation /> ]* </interface>

13 interface example

14 import and include a.wsdl, b.wsdl and c.wsdl together can represent a service <import namespace=" location="credit-card-faults.wsdl"/> <include location="credit-card-faults.wsdl"/>

15 Interface inheritance
An interfaces may extend one or more interfaces <interface name="xs:NCName" extends="list of xs:QName"?> ... </interface>

16 binding Binding element defines the underlying transport and wire format for messages. <description> <binding name="xs:NCName" interface="xs:QName"? type="xs:anyURI" > <documentation />* [ <fault /> | <operation /> ]* </binding> </description>

17 binding example

18 service A service element describes a set of endpoints, that refer to a single network address for a binding. <service name="reservationService" interface="tns:reservationInterface"> <endpoint name="reservationEndpoint" binding="tns:reservationSOAPBinding" address =" </service>

19 MEPs Message Exchange Patterns Message exchange between nodes
Specifies sequencing, direction and cardinality New in WSDL 2.0: Extensible (was fixed in WSDL 1.1) - number and names of MEP not finalized Any number of nodes (was 2 in WSDL 1.1)

20 Predefined MEPs In-only (no faults) Out-only (no faults)
Out-In (fault replaces message) Robust In-only (message triggers fault) Robust Out-only (message triggers fault) Out-Optional-In (message triggers fault) In-out (fault replaces message)

21 Operations Safe attribute of operation
Agent does not incur any obligation beyond interaction. For example, you do not have to pay. Style attribute of operation Gives additional information about the operation RPC Style/ IRI /Mulitipart

22 Predefined bindings SOAP Binding extention WSDL HTTP Binding Extension

23 SOAP binding Definines a set of default rules
Operations need not be explicitly stated SOAP header blocks can be declared – per message and per-fault Interface fault mapping to a SOAP fault

24 HTTP binding Complete control over the url
Can select HTTP method, content type – So REST style invocations are supported Defines how to serialize parameters

25 WSDL 2.0 and REST

26 Why WSDL 2.0 ? Interface inheritence
Abstract and concrete descriptions are consistent Bindings cannot override interface A single interface per binding HTTP binding is precisely defined

27 Why WSDL 2.0 ? Defines 8 MEPs. Extensible MEPs Language extentions
Simple and easy Only Doc\Literal Better naming conventions Powerful – many extention points

28 Questions ?????

29 Introduction to WSDL 2.0 Thank you


Download ppt "Dimuthu Leelarathne Software Engineer WSO2"

Similar presentations


Ads by Google