130 likes | 319 Views
WSDL - W eb S ervices D escription L anguage. Tarvo Treier idu0110@gmail.com. WSDL. WSDL on XML põhine keel, mis kirjeldab veebiteenuseid määrates: teenuste asukohta operatsioonid (meetodid), mida teenus pakub Sisend ja väljund parameetrite andmestruktuurid Viited
E N D
WSDL - Web Services Description Language Tarvo Treier idu0110@gmail.com
WSDL • WSDL on XML põhine keel, mis kirjeldab veebiteenuseid määrates: • teenuste asukohta • operatsioonid (meetodid), mida teenus pakub • Sisend ja väljund parameetrite andmestruktuurid • Viited • http://www.w3.org/TR/wsdl • http://w3schools.com/wsdl/default.asp • http://www.ws-standards.com/wsdl.asp
WSDL’i elemendid <definitions> <types>... </types> <message>... </message> <portType>... </portType> <binding>... </binding> <service>... </service> </definitions>
Operatsioonide tüübid • One-way – operatsioon võtab sõnumeid ainult vastu • Request-response – operatsioon võtab sõnumeid vastu ja vastab neile • Solicit-response – operatsioon saadab sõnumeid ja jääb neile vastuseid ootama • Notification– operatsioon saadab sõnumeid ja ei oota neile vastuseid
Request – Response näide <message name="getTermRequest"> <part name="term" type="xs:string"/> </message> <message name="getTermResponse"> <part name="value" type="xs:string"/> </message> <portType name="glossaryTerms"><operation name="getTerm"><input message="getTermRequest"/><output message="getTermResponse"/> ...</operation> </portType>
Näite WSDL • http://elrond.tud.ttu.ee/material/treier/idu0110/2008/h4_wsdl/footballpoolwebserviceStart.wsdl • SoapUI WebStart • http://www.soapui.org/jnlp/2.0.2/soapui.jnlp • Endpoint • http://euro2008.dataaccess.eu/footballpoolwebservice.wso
SOAP - Simple Object Access Protocol SOAP Envelope Element is the root element of a SOAP message. It defines the XML document as a SOAP message. <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Header> ... ... </soap:Header> <soap:Body> ... ... <soap:Fault> ... ... </soap:Fault> </soap:Body> </soap:Envelope> • http://w3schools.com/soap
Ülesanne 1 • Laadi alla jalgpalli teenuse WSDL: http://elrond.tud.ttu.ee/material/treier/idu0110/2008/h4_wsdl/footballpoolwebserviceStart.wsdl • Määrata WSDL’s teenuse paiknemise asukohaks (selleks kohaks, kus teenus on kättesaadav) http://euro2008.dataaccess.eu/footballpoolwebservice.wso • Tehke WSDL’i sees kirjeldatud schema põhjal eraldi XSD dokument ja asendage WSDL’s kirjeldatud schema sellega.
Ülesanne 2 • Lisada 2 uut operatsiooni “FootballPoolWebServiceSoapType”-le • PersonsPerCountry • Sisend sõnum imporditud XSD’st element “PersonsPerCountry” • Väljund sõnum imporditud XSD’st element “PersonsPerCountryResponse” • GamesPerCity • Sisend sõnum imporditud XSD’st element “GamesPerCity” • Väljund sõnum imporditud XSD’st element “GamesPerCityResponse”
Ülesanne 3 • Lisage olemasolevale operatsioonile “cities” fault element nimega “CityFault” ja siduge sellega uus message nimega “CityFault”. “CityFault” message on “FaultType” tüüpi, mis on defineeritud juba XSD’s. • Jätkub...
Ülesanne 3 jätkub.. • Defineerige WSDL’s SOAP Headerisse sessionId parameeter “Cities” operatsioonile kasutades järgnevat message’t: <message name="HeaderInfo"> <part name="sessionId" element="tns:SessionId"/> </message>