80 Pages

23_WebServices

Course: CSI ITI1520, Spring 2010
School: University of Ottawa
Rating:
 
 
 
 
 

Word Count: 3822

Document Preview

3540 Structures, CSI techniques et normes du Web Friday, April 9, 2010 XML Schema, SOAP, WSDL Objectif: Introduction XML Schema Introduction aux vocabulaires SOAP et WSDL Comprendres les relations entre XML Schema, SOAP et WSDL Lectures: Web Technologies (2007) Pages 502525 Friday, April 9, 2010 Plan 1. XML Schema 2. WSDL 3. SOAP Friday, April 9, 2010 Les Services Web supportent les interactions...

Register Now

Unformatted Document Excerpt

Coursehero >> Canada >> University of Ottawa >> CSI ITI1520

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
3540 Structures, CSI techniques et normes du Web Friday, April 9, 2010 XML Schema, SOAP, WSDL Objectif: Introduction XML Schema Introduction aux vocabulaires SOAP et WSDL Comprendres les relations entre XML Schema, SOAP et WSDL Lectures: Web Technologies (2007) Pages 502525 Friday, April 9, 2010 Plan 1. XML Schema 2. WSDL 3. SOAP Friday, April 9, 2010 Les Services Web supportent les interactions machine-machine travers un rseau messages XML (SOAP) entre clients et serveurs laide de HTTP laide dun document XML (WSDL) Un Service Web supporte les changes de Les (oprations) services sont dcrits SOAP et WSDL font appel XML Schema pour dnir la syntaxe des messages et dnir les oprations, paramtres et valeurs de retour (particulirement leurs types) Friday, April 9, 2010 Service Web a software system designed to support interoperable Machine to Machine interaction over a network (W3C) API Web Messages SOAP via HTTP Descriptions WSDL Rpertoires UDDI Friday, April 9, 2010 Service Web Repose sur des standards ouverts (HTTP, XML) Independant de tout langage de Modulaire programmation, environment, SE Friday, April 9, 2010 Source : http://java.sun.com/developer/technicalArticles/WebServices/WSPack2/jaxrpc.html Friday, April 9, 2010 Pile de protocoles de communication Couche Rpertoire Description Message Transport Friday, April 9, 2010 Technologie UDDI WSDL SOAP HTTP Schma XML Mta-langage Friday, April 9, 2010 Vocabulaire XML Un vocabulaire (application) XML est une spcication complte des lments et attributs dun type spcique de documents XML 1. Langue naturelle (petits groupes) 2. Dclarations de type de document (DTD) (documents publiques) 3. XML Schema Friday, April 9, 2010 Un autre formalisme ? <!ENTITY % address "(street, city, province, postal-code)" > <!ELEMENT street (#PCDATA) > <!ELEMENT city (#PCDATA) > <!ELEMENT province (#PCDATA) > <!ELEMENT postal-code (#PCDATA) > Le DTD est peu expressif Le DTD contraint la structure du document (ordre et imbrication des lments), mais pas le contenu textuel Friday, April 9, 2010 Un autre formalisme ? Le DTD ne supporte pas les espaces de nommage Ainsi, si a.dtd importe le contenu de b.dtd ( laide dune directive), il faut au pralable sassurer que les noms dlments sont uniques a:name et b:name Friday, April 9, 2010 Schma XML Un schma dnit une classe de documents XML Un document qui satisfait un schma est une instance de ce schma Un Schma XML est un document XML! Puisque cest un document XML, les espaces de nommage sont supports et lon bnficie de la panoplie doutils XML Friday, April 9, 2010 <?xml version="1.0" encoding="UTF-8"?> <score xmlns="http:/ /www.site.uottawa.ca/tennis" xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:/ /www.site.uottawa.ca/tennis tennis.xsd">10</score> tennis.xsd : <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http:/ /www.w3.org/2001/XMLSchema" targetNameSpace=http:/ /www.site.uottawa.ca/tennis> <xs:element n ame="score"> <xs:simpleType> <xs:restriction base="xs:short "> <xs:enumeration value="10"> </xs:enumeration> <xs:enumeration value="15"> </xs:enumeration> <xs:enumeration value="30"> </xs:enumeration> <xs:enumeration value="40"> </xs:enumeration> </xs:restriction> <?xml version="1.0" encoding="UTF-8"?> </xs:simpleType> <score>10</score> </xs:element> </xs:schema> Friday, April 9, 2010 . .. <xs:complexType name="Wine"> <xs:sequence> <xs:sequence> <xs:element name "quantity" type="xs:nonNegativeInteger"/> <xs:element name="quantity" type="xs:nonNegativeInteger"/> <xs:element name="rating" minOccurs="0"> <xs:element name minOccurs="0"> <xs:complexType> <xs:attribute name="stars" type="xs:positiveInteger"/> </xs:complexType> </xs:element> <xs:element name="comment" type="cat:Comment" minOccurs="0"/> "cat:Comment" minOccurs="0"/> </xs:sequence> <xs:attribute name="code" type="cat:SAQ-code" use="required"/> "required"/> </xs:complexType> ... <?xml version="1.0" encoding="UTF-8"?> <wine code="00518712" > <rating stars="2"/> <quantity>5</quantity> </wine> Friday, April 9, 2010 Schma XML Le formalisme permet la dnition de types! De sorte que lorsquon dnit un lment, par exemple code-postal, on peut aussi lui associer un type, CodePostal, an de spcier lensemble des valeurs possibles, ici, on sassure que le format est bien [A-Z][0-9][A-Z] [0-9][A-Z][0-9] Convention : caligraphie semblable aux classes de Java. code-postal lment CodePostal type Friday, April 9, 2010 Schma XML Le document WSDL dnit les oprations du service. Ce faisant, il doit aussi dnir le type des paramtres et des valeurs de retour paramtres et des valeurs de retour Les messages SOAP encodent les valeurs des Des dnitions formelles (rigoureuses) du type des valeurs sont absolument ncessaires Friday, April 9, 2010 Schma XML Puisque le schma est un vocabulaire XML, il faudra deux espaces de nommage an de distinguer le schma du vocabulaire quil dnit Usuellement un chier .xsd XML Schema remplace le DTD comme formalisme pour la dnition dun vocabulaire Friday, April 9, 2010 Schma XML Il y a deux catgories de types: simples et complexes Un type simple dnit le contenu textuel dun lment nayant aucun lment enfant dun lment ayant des lments enfants (donnes structures) Un type complexe dnit le contenu Friday, April 9, 2010 Types zip sera associ un type simple address sera associ un type complexe <address> <street>800, King Edward</street> <city>Ottawa</city> <zip>K1N 6N5</zip> </address> Pleusieurs types prdnis : string, int, boolean, mais aussi date, URI, etc. Friday, April 9, 2010 Friday, April 9, 2010 Types simples XML Schema spcie lintervalle de valeurs ainsi que la reprsentation sous forme de chanes de caractres des types prdnis Friday, April 9, 2010 Types simples Les types simples sont associs aux lments sans enfants <xs:simpleType> est utilis an de dnir un nouveau type simple des restrictions Il faut spcier un type de base ainsi Friday, April 9, 2010 Types simples <xs:simpleType name="Pourcentage"> <xs:restriction base="xs:number"> Les lments utiliss afin de <xs:fractionDigits value="1"/> contraindre <xs:minExclusive value="0.0"/> lespace des valeurs sappellent <xs:maxExclusive value="100.0"/> facet </xs:restriction> </xs:simpleType> <xs:simpleType name="Rsultat" > <union memberTypes="Pourcentage Annotation" /> </xs:simpleType> <xs:simpleType name="Annotation"> <xs:restriction base="xs:string"> <xs:enumeration value="INC"/> <xs:enumeration value="ABS"/> </xs:restriction> </xs:simpleType> Friday, April 9, 2010 Types simples <xs:simpleType name="Pourcentage"> <xs:restriction base="xs:number"> <xs:fractionDigits value="1"/> <xs:minExclusive value="0.0"/> <xs:maxExclusive value="100.0"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="Annotation"> <xs:restriction base="xs:string"> <xs:enumeration value="INC"/> <xs:enumeration value="ABS"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="Rsultats" > <list itemType="Rsultat" /> </xs:simpleType> <xs:simpleType name="Rsultat" > <union memberTypes="Pourcentage Annotation" /> </xs:simpleType> Friday, April 9, 2010 Restrictions (facets) En plus des restrictions prsentes, on peut spcier une taille minimale (minLength) ou maximale (maxLength) ainsi que plusieurs autres Friday, April 9, 2010 Types complexes Les types complexes sont associs aux lments ayant des enfants (internes) <xs:complexType> est utilis an de dnir un nouveau type complexe xs:sequence, xs:choice, xs:all Friday, April 9, 2010 WineCatalog.xsd Lexemple qui suit servira illustrer les diffrents concepts Notons que la balise xs:element sert la dclaration dun lment du vocabulaire cible Notons aussi quil y a plusieurs faons de structurer un schma selon que lon dnit des types anonymes ou nomms Friday, April 9, 2010 O rganisation du schma, et non lorganisation logique du vocabulaire cible Friday, April 9, 2010 L e diagram illustre la structure du schma et non la structure du vocabulaire Friday, April 9, 2010 lment racine : xs:schema <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs='http:/ /www.w3.org/2001/XMLSchema' xmlns:cat="http:/ /www.iro.umontreal.ca/lapalme/wine-catalog" targetNamespace="http:/ /www.iro.umontreal.ca/lapalme/wine-catalog"> ... </xs:schema> Friday, April 9, 2010 type anonyme <xs:element name="cellar"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="wine" type="Wine"/> </xs:sequence> </xs:complexType> </xs:element> ... Friday, April 9, 2010 type nomm <xs:complexType name="Wine"> <xs:sequence> <xs:element name="purchaseDate" type="xs:date"/> <xs:element name="quantity" type="xs:nonNegativeInteger"/> <xs:element name="rating" minOccurs="0"> <xs:complexType> <xs:attribute name="stars" type="xs:positiveInteger"/> </xs:complexType> </xs:element> <xs:element name="comment" type="cat:Comment" minOccurs="0"/> </xs:sequence> <xs:attribute name="code" type="cat:SAQ-code" use="required"/> </xs:complexType> ... Friday, April 9, 2010 type nomm, utilisation de ... <xs:element name="wine-catalog"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="wine" type="cat:Wine"/> </xs:sequence> <!-- needed because this schema will be imported...--> <xs:attribute ref="xml:base"/> </xs:complexType> <xs:key name="WineNumber"> <!-- XPath expressions must be qualified --> <xs:selector xpath="cat:wine"/> <xs:field xpath="@code"/> </xs:key> <xs:unique name="WineName"> <xs:selector xpath="cat:wine"/> <xs:field xpath="@name"/> <xs:field xpath="@appellation"/> </xs:unique> </xs:element> ... Friday, April 9, 2010 xs:all Les lments apparaissent dans nimporte quel ordre <xs:element name="name"> <xs:complexType> <xs:all> <xs:element name="first" type="xs:string" minOccurs="0" /> <xs:element name="family" type="xs:string" minOccurs="0"/> <xs:element name="initial" type="xs:string" minOccurs="0"/> </xs:all> </xs:complexType> </xs:element> ... Friday, April 9, 2010 xs:group Associe un nom un groupe dlments qui servent ensuite de blocs de construction pour llaboration de types complexes Llment address nexiste pas <xs:group name="address"> <xs:sequence> <xs:element name="street" type="xs:string"/> <xs:element name="city" type="xs:string"/> <xs:element name="province" type="ProvinceCA"/> "ProvinceCA"/> <xs:element name="postal-code" type="PostalCodeCA"/> </xs:sequence> </xs:group> ... Friday, April 9, 2010 Fait appel au groupe address <xs:complexType name="Owner"> <xs:sequence> <xs:element ref="name"/> <xs:group ref="address"/> </xs:sequence> </xs:complexType> ... Friday, April 9, 2010 xs:restriction/xs:enumeration <xs:simpleType name="ProvinceCA"> <xs:restriction base="xs:string"> <xs:enumeration value="AB"/> <xs:enumeration value="BC"/> <xs:enumeration value="MB"/> <xs:enumeration value="NB"/> <xs:enumeration value="NL"/> <xs:enumeration value="NT"/> <xs:enumeration value="NS"/> <xs:enumeration value="NU"/> <xs:enumeration value="ON"/> <xs:enumeration value="QC"/> <xs:enumeration value="SK"/> <xs:enumeration value="YT"/> </xs:restriction> </xs:simpleType> ... Friday, April 9, 2010 xs:restriction/xs:pattern <xs:simpleType name="PostalCodeCA"> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z][0-9][A-Z] [0-9][A-Z][0-9]"/> </xs:restriction> </xs:simpleType> ... Friday, April 9, 2010 Principaux lments xs:schema xs:element xs:attribute xs:simpleType xs:complexType xs:group xs:sequence xs:choice xs:restriction Friday, April 9, 2010 Remarques Friday, April 9, 2010 Remplace le DTD <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="WineCatalog.xsl"?> <wine-catalog xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:/ /www.iro.umontreal.ca/lapalme/wine-catalog WineCatalog.xsd" x mlns="http:/ /www.iro.umontreal.ca/lapalme/wine-catalog"> <wine name="Domaine de l'le Margaux" appellation="Bordeaux suprieur" classification="a.c." code="C00043125" format="750ml"> <properties> <color>red</color> <alcoholic-strength>12.5</alcoholic-strength> <nature>still</nature> </properties> ... </wine-catalog> Friday, April 9, 2010 Schma comme sous partie document dun XML ... <types> <schema targetNamespace="http://tempuri.org/types" xmlns:tns="http:/ /tempuri.org/types" xmlns:soap11-enc="http:/ /schemas.xmlsoap.org/soap/encoding/ " xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http:/ /schemas.xmlsoap.org/wsdl/ " xmlns="http:/ /www.w3.org/2001/XMLSchema"> <import namespace="http:/ /schemas.xmlsoap.org/soap/encoding/ "/> <complexType name="ExchangeValues"> <sequence> <element name="dollars" type="double"/> Partie dun document WSDL <element name="euros" type="double"/> comportant des lments XML Schema <element name="yen" type="double"/> </sequence> Ce document WSDL dfinit le </complexType> type ExchangeValues </schema> Le document SOAP de la page qui </types> suit lutilise! ... Friday, April 9, 2010 Schma comme sous partie dun document XML <env:Envelope xmlns:env="http:/ /schemas.xmlsoap.org/soap/envelope/ " xmlns:xsd="http:/ /www.w3.org/2001/XMLSchema" xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xmlns:enc="http:/ /schemas.xmlsoap.org/soap/encoding/ " xmlns:ns0="http:/ /tempuri.org/types" env:encodingStyle="http:/ /schemas.xmlsoap.org/soap/encoding/ "> <env:Body> <ans1:fromDollarsResponse xmlns:ans1="http:/ /tempuri.org/wsdl "> <result href="#ID1"/> </ans1:fromDollarsResponse> <ns0:ExchangeValues id="ID1" xsi:type="ns0:ExchangeValues"> <dollars xsi:type="xsd:double">1.0</dollars> <euros xsi:type="xsd:double">0.746826</euros> Message SOAP <yen xsi:type="xsd:double">102.56</yen> comportant </ns0:ExchangeValues> certains lments XML Schema </env:Body> </env:Envelope> Friday, April 9, 2010 Alternatives RELAX NG (REgular LAnguage for XML, New Generation) ; notation plus compacte et plus puissante ajoute un formalisme pour dnir des contraintes smantique (est-que la valeur de la date de n est plus grande que celle de la date du dbut ?) Schematron (un vocabulaire XML) Friday, April 9, 2010 Services Web SOAP et DOM Friday, April 9, 2010 Pile de protocoles de communication Couche Rpertoire Description Message Transport Friday, April 9, 2010 Technologie UDDI WSDL SOAP HTTP WSDL Web Services Description Language Friday, April 9, 2010 WSDL Web Services Description Language Contrat entre un service et les consommateurs de ce service service endpoint oprations types de donnes description des messages Friday, April 9, 2010 WSDL Vocabulaire XML pour la description de services Web Recommandation W3C Version 2.0 ; 26 juin 2007 http://www.w3.org/TR/wsdl20/ wscompile produit des documents 1.1 Friday, April 9, 2010 Interface du service package myCurCon; public interface CurCon { public ExchangeValues fromDollars( double dollars ); public ExchangeValues fromEuros( double euros ); public ExchangeValues fromYen( double yen ); } public class ExchangeValues { public double dollars; public double euros; public double yen; } Exemple du livre du cours, pages 491502. Friday, April 9, 2010 Structure dun WSDL descriptions (lment racine) types messages portType binding service Friday, April 9, 2010 Document WSDL <?xml version="1.0" encoding="UTF-8"?> <definitions name="HistoricCurrencyConverter" targetNamespace="http:/ /tempuri.org/wsdl " xmlns:tns="http:/ /tempuri.org/wsdl " xmlns="http:/ /schemas.xmlsoap.org/wsdl/ " xmlns:ns2="http://tempuri.org/types" xmlns:xsd="http:/ /www.w3.org/2001/XMLSchema" xmlns:soap="http:/ /schemas.xmlsoap.org/wsdl/soap/ "> ... definitions est llment racine Ses attributs sont les dclarations des espaces de nommages utiliss par les diverses parties du document Friday, April 9, 2010 ... <types> <schema targetNamespace="http://tempuri.org/types" xmlns:tns="http://tempuri.org/types" xmlns:soap11-enc="http:/ /schemas.xmlsoap.org/soap/encoding/ " xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http:/ /schemas.xmlsoap.org/wsdl/ " xmlns="http:/ /www.w3.org/2001/XMLSchema"> <import namespace="http:/ /schemas.xmlsoap.org/soap/encoding/ "/> <complexType name="ExchangeValues"> Dfinition de types laide de XML Schema <sequence> <element name="dollars" type="double"/> Ici, le type ExchangeValues est dfinit et <element associ lespace de nommage : <element name="euros" type="double"/> http://tempuri.org/types <element name="yen" type="double"/> Globalement, via llment definitions, </sequence> le prefixe ns2 avait t associ lespace de nommage http://tempuri.org/types </complexType> ns2:ExchangeValues a donc t dfinit </schema> </types> Remarque : lespace de nomme par dfaut est celui dXML Schema ... Friday, April 9, 2010 Document WSDL ... <message name="CurCon_fromDollars"> <part name="double_1" type="xsd:double"/> </message> <message name="CurCon_fromDollarsResponse"> <part name="result" type="ns2:ExchangeValues"/> </message> <message name="CurCon_fromEuros"> <part name="double_1" type="xsd:double"/> </message> <message name="CurCon_fromEurosResponse"> <part name="result" type="ns2:ExchangeValues"/> </message> <message name="CurCon_fromYen"> <part name="double_1" type="xsd:double"/> </message> <message name="CurCon_fromYenResponse"> <part name="result" type="ns2:ExchangeValues"/> </message> ... Friday, April 9, 2010 Document WSDL Pour chaque opration, dfinis (nom + type) la liste des paramtres et la valeur de retour Il y aura un lment part par paramtre Les noms sont uniques (seulement) lintrieur dun message Les types sont soient les types prdfinis de XML Schema ou ceux dfinis dans par llment type plus haut ... <portType name="CurCon"> <operation name="fromDollars" parameterOrder="double_1"> <input message="tns:CurCon_fromDollars"/> <output message="tns:CurCon_fromDollarsResponse"/> </operation> <operation name="fromEuros" parameterOrder="double_1"> <input message="tns:CurCon_fromEuros"/> <output message="tns:CurCon_fromEurosResponse"/> </operation> <operation name="fromYen" parameterOrder="double_1"> <input message="tns:CurCon_fromYen"/> <output message="tns:CurCon_fromYenResponse"/> </operation> Dfinis les oprations de ce service Web </portType> Le nom des mthodes est ... Les entres et sorties dtermin par les annotations @WebMethod Document WSDL sont associes aux messages dfinis ci-haut (prcdemment) Friday, April 9, 2010 Document WSDL . .. application<binding name="CurConBinding" type="tns:CurCon"> <soap:binding transport="http:/ /schemas.xmlsoap.org/soap/http" style="rpc"/> layer <soap:binding transport="http:/ <operation name="fromDollars"> <operation protocol <soap:operation soapAction=""/> <soap:operation <input> <soap:body encodingStyle="http:/ /schemas.xmlsoap.org/soap/encoding/ " rpc ou use="encoded" namespace="http:/ /tempuri.org/wsdl "/> document </input> <output> <soap:body encodingStyle="http:/ /schemas.xmlsoap.org/soap/encoding/ " use="encoded" namespace="http:/ /tempuri.org/wsdl "/> </output> </operation> Si portType <operation name="fromEuros"> SOAP over HTTP spcifie ... linterface, Spcifie lencodage des </operation> binding est messages, ici SOAP, et le <operation name="fromYen"> limplmentation protocol de transport, ici ... HTTP. </operation> </binding> Il pourrait y avoir plusieurs ... associations (bindings) par service (portType, tns:CurCon) Friday, April 9, 2010 Document WSDL . .. <service name="HistoricCurrencyConverter"> <port name="CurConPort" binding="tns:CurConBinding"> <soap:address location="REPLACE_WITH_ACTUAL_URL"/> </port> </service> </definitions> Friday, April 9, 2010 Utilisations concrtes de WSDL http://webservices.amazon.com/ AWSECommerceService/ AWSECommerceService.wsdl? latest/ebaySvc.wsdl http://developer.ebay.com/webservices/ http://www.weather.gov/forecasts/xml/ DWMLgen/schema/DWML.xsd http://api.google.com/GoogleSearch.wsdl Friday, April 9, 2010 Friday, April 9, 2010 Friday, April 9, 2010 Friday, April 9, 2010 SOAP Simple Object Access Protocol Friday, April 9, 2010 SOAP Simple Object Access Protocol Recommandation W3C Version 1.2 ; 27 avril 2007 exchanging structured information in a decentralized, distributed environment (...) a lightweight protocol intended for Cest un vocabulaire XML Friday, April 9, 2010 SOAP On utilise SOAP deux ns dans le contexte des services Web : Appels de mthodes distantes (SOAP for RPC ; JAX-RPC) (SOAP for messaging) Passage de messages Friday, April 9, 2010 Remote procedure call RPC (Remote Procedure Call) est une technologie permettant lappel de mthodes sur un ordinateur distant Les diverses implmentations, en gnral, cachent les dtails lis aux communications de sorte que lappel ressemble un appel local lune des implmentations les mieux connues RFC 707 de 14-JAN-1976 ; SUN RPC est Friday, April 9, 2010 Remote procedure call Ce qui rend les implmentations bases sur SOAP particulirement intressantes, ce sont les standards ouverts utiliss (XML, HTTP...) qui permettent donc la cohabitation de langages de programmation diffrents, systmes dexploitation diffrents... des protocoles texte, bien supports... Friday, April 9, 2010 SOAP Un document est un message ; tout change dinformation entre un service et son client se fait par lenvoi de messages Le message rside dans une enveloppe Une enveloppe est constitue dun en-tte (optionnelle) et obligatoirement dun corps Friday, April 9, 2010 SOAP Llment racine est Envelope Lespace de nommage des documents SOAP est : http://schemas.xmlaoap.org/soap/envelope Friday, April 9, 2010 SOAP Lattribut env:encodingStyle spcie le Depuis 1.2 : le schma dencodage ne schma dencodage (types des donnes, mthode utilise pour leur srialisation) peut apparatre dans llment racine, il napparat que dans certains lments spciques Friday, April 9, 2010 Message requte SOAP <?xml version="1.0" encoding="UTF-8"?> <env:Envelope xmlns:env="http:/ /schemas.xmlsoap.org/soap/envelope/ " xmlns:xsd="http:/ /www.w3.org/2001/XMLSchema" xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xmlns:enc="http:/ /schemas.xmlsoap.org/soap/encoding/ " xmlns:ns0="http:/ /tempuri.org/wsdl " xmlns:ns1="http://tempuri.org/types" env:encodingStyle="http:/ /schemas.xmlsoap.org/soap/encoding/ "> <env:Body> <ns0:fromDollars> <ns0:fromDollars> SOAP ne se conforme pas <double_1 <double_1 xsi:type="xsd:double">1.0</double_1> au mcanismes standards accessor </ns0:fromDollars> </ns0:fromDollars> lis aux espaces de nommages </env:Body> </env:Body> struct </env:Envelope> Techniquement, doubl_1 nappartient aucun espace de nommage... Friday, April 9, 2010 Message rponse SOAP <env:Envelope xmlns:env="http:/ /schemas.xmlsoap.org/soap/envelope/ " xmlns:xsd="http:/ /www.w3.org/2001/XMLSchema" xmlns:xsi="http:/ /www.w3.org/2001/XMLSchema-instance" xmlns:enc="http:/ /schemas.xmlsoap.org/soap/encoding/ " xmlns:ns0="http:/ /tempuri.org/types" env:encodingStyle="http:/ /schemas.xmlsoap.org/soap/encoding/ "> <env:Body> <ans1:fromDollarsResponse xmlns:ans1="http:/ /tempuri.org/wsdl "> <result href="#ID1"/> </ans1:fromDollarsResponse> <ns0:ExchangeValues <ns0:ExchangeValues id="ID1" xsi:type="ns0:ExchangeValues"> struct <dollars <dollars xsi:type="xsd:double">1.0</dollars> accessor <euros <euros xsi:type="xsd:double">0.746826</euros> <yen <yen xsi:type="xsd:double">102.56</yen> </ns0:ExchangeValues> </ns0:ExchangeValues> </env:Body> </env:Body> </env:Envelope> Friday, April 9, 2010 Services Web Les Services Web supportent les appels de mthodes sur des ordinateurs distants Couche Rpertoire Description Message Transport Technologie UDDI WSDL SOAP HTTP Pour ce faire, ils reposent sur un ensemble de technologies XML ouvertes Friday, April 9, 2010 Standards Ouverts Web Services Interoperability Organization (WS-I) : IBM, Microsoft, BEA Systems, SAP, Oracle, Fujitsu, Hewlett-Packard, et Intel ; ainsi que deux membres lus Sun Microsystems et webMethods www.sw-i.org Friday, April 9, 2010 pilogue Friday, April 9, 2010 Concepts Prologue Assises du Web HTTP Langage de balisage XHTML DTD XHTML CSS JavaScript DOM vnements du DOM CGI Servlet XML, Processeur SAX, Processeur DOM, Transformations, XPath, XSL JSP, EL, JSTL Ajax WebServices : SOAP, WSDL pilogue Friday, April 9, 2010 Sujets connexes 1. Connexions aux bases de donnes 2. SIP (Session Initiation Protocol) (Voice-over-IP (VoIP) phone service, instant messaging, presence and buddy list management and web conferencing) SailFin/ GlassFish 3. JavaFaces Server 4. Web smantique (Ontologies, smantique et services) 5. Friends of Friends (FOF)... 6. Scurit (authentication, encryption...) 7. Vie prive Friday, April 9, 2010 Discussion Au sujet du cours : Quest-ce qui a fonctionn ? Quest-ce qui doit tre chang ? Quest-ce qui manque ? En plus des laboratoires, il pourrait y avoir des tutoriels, quand pensezvous ? Friday, April 9, 2010 Discussion Au sujet du cours : Vous est-il arriv (depuis le dbut du cours) dassocier certaines technologies vues en classe certains sites Web ? Friday, April 9, 2010 Merci! Bon examens naux! Bonne continuation! Friday, April 9, 2010
Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

University of Ottawa - CSI - ITI1520
Informations gnrales eeITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 6 janvier 2010 Rsum e e Plan de cours Netiquette Bioinformatique Architecture des ordinateurs Lundi 11 h 3
University of Ottawa - CSI - ITI1520
Arbre binaireITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 8 avril 2010 Rsum e eUn arbre binaire est une structure arborescente (hirarchique) telle que chaque e noeud poss`de
University of Ottawa - CSI - ITI1520
Traitement des erreurs dexcution en Java eITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 11 fvrier 2010 e Rsum e e Traitement derreurs en Java : Dclaration, gestion, cration des
University of Ottawa - CSI - ITI1520
Dnitions eITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 1er mars 2010 Rsum e e Files LinkedQueueUne le (queue ) est un type abstrait de donnes linaire tel que lajout de e e do
University of Ottawa - CSI - ITI1520
Dnitions eITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 1er mars 2010 Rsum e e Files ArrayQueueUne le (queue ) est un type abstrait de donnes linaire tel que lajout de e e don
University of Ottawa - CSI - ITI1520
CircleITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 25 janvier 2010 Rsum e e Hritage (partie 2) e PolymorphismeCompltons limplmentation de la classe Circle. e e O` cre-t-on li
University of Ottawa - CSI - ITI1520
RevueITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 6 janvier 2010 Rsum e e Architecture des ordinateursPour point de dpart, jassume que les notions suivantes sont bien ma ees
University of Ottawa - CSI - ITI1520
Interface 1ITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 1er fvrier 2010 e Rsum e e Interface Type abstrait de donnes eEn programmation oriente objet, linterface dune classe d
University of Ottawa - CSI - ITI1520
MotivationITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 22 mars 2010 Rsum e e Itrateur 1 (Partie 1) ePour une implmentation (simplement) cha ee de linterface List dnie comme e
University of Ottawa - CSI - ITI1520
ITI 1521. Introduction informatique IILaboratoire 8 Hiver 2010[ PDF ]Objectifs Introduction aux entres-sorties (E/S) en Java Approfondir les notions lies aux exceptionsIntroductionCe laboratoire comporte deux parties. La premire partie introduit les
University of Ottawa - CSI - ITI1520
MotdITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 18 mars 2010 Rsum e e Listes cha ees (partie 2) n Pointeur arri`re e Listes doublement cha ees n Noeud factice (dummy node)Da
University of Ottawa - CSI - ITI1520
Programmation oriente objet OO eITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 13 janvier 2010 Rsum e e Programmation oriente objet e Encapsulation encapsulation analyse OO/co
University of Ottawa - CSI - ITI1520
Rsum e eITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 24 fvrier 2010 e Rsum e eLacc`s aux lments dun tableau est tr`s rapide, il ncessite toujours un nombre e ee e e constant
University of Ottawa - CSI - ITI1520
ObjectITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 10 fvrier 2010 e Rsum e e Exemples de polymorphisme : Object : equals, toString ; Structure de donnes gnrique : Pair. e eeQ
University of Ottawa - CSI - ITI1520
MotdITI 1521. Introduction ` linformatique II aMarcel Turcotte Ecole dingnierie et de technologie de linformation e Version du 11 janvier 2010 Rsum e e Types de donnes e Porte des variables e Gestion de la mmoire e Utilisez les si`ges avant s.v.p. ! e
University of Ottawa - CSI - ITI1520
ITI 1521. Introduction linformatique IILaboratoire 2 Hiver 2010Premire partieConnaissances requisesObjectifs Manipuler des tableaux et des rfrences Comprendre lutilisation de = et equals 1FindAndReplaceCompltez limplmentation de la mthode de class
University of Ottawa - CSI - ITI1520
ITI 1521. Introduction linformatique IILaboratoire 4 Hiver 2010Objectifs Crer une hirarchie de classes Approfondir vos connaissances sur lhritage Introduction au polymorphismeJeu de la vieCe laboratoire unie deux ides. Dune part, il y a le jeu de la
University of Ottawa - CSI - ITI1520
ITI 1521. Introduction linformatique IILaboratoire 5 Hiver 2010Objectifs Bien comprendre tous les aspects des interfaces Introduction limplmentation et lutilisation des piles Revu des concepts dhritagePremire partieInterfaces1 CombinationRevisitons
University of Ottawa - CSI - ITI1520
ITI 1521. Introduction linformatique IILaboratoire 6 Hiver 2010Plan Introduction aux interfaces graphiques usager (GUIs) Exercices lis aux interfaces graphiques Les solutions sont incluses dans ce document, faites de srieux eorts avant de consulter les
Delaware - MATH - 201
COMP/MATH 3804 Design and Analysis of Algorithms I Assignment 2Due June 3 at the beginning of classWrite down your name and student number on every page. The questions must be answered in order and your assignment sheets must be stapled. Late assignment
Delaware - MATH - 201
Spring 2010 MATH 4320: Final Exam Instructor: Yuri Berest The exam is due 6 pm, Thursday, May 20. Please turn in your exam in 439 Mallot Hall. Problem 1. (35 points) Let A be a commutative ring with 1. a. An element a A is called nilpotent if an = 0 for s
Delaware - MATH - 201
Spring 2010 MATH 4320: Solutions to Prelim 2 Instructor: Yuri Berest Problem 1. (a) This is straightforward: for example, we have 1 [(x1 , x2 ) (y1 , y2 )] = 1 [(x1 y1 , x2 y2 )] = x1 y1 = 1 [(x1 , x2 )] 1 [(y1 , y2 )] , and similarly for 2 . Both 1 and 2
Delaware - MATH - 201
Spring 2010 MATH 4320: Prelim 2 Instructor: Yuri Berest The exam is due Wednesday, April 14. Please write clearly and concisely. Problem 1. (15 points) If H1 and H2 are two groups, dene their direct product H1 H2 to be the set of ordered pairs cfw_(x1 , x
Delaware - MATH - 201
Spring 2010 MATH 4320: Prelim 1 Instructor: Yuri BerestProblem 1. (15 points) a. Find all integer solutions to the congruence 72x 36 (mod 376) . b. Find the smallest positive integer which leaves remainders 1, 3, 4 after dividing by 9, 7, 5 respectively.
Delaware - MATH - 201
Delaware - MATH - 201
Spring 2010 MATH 4320: Solutions to Prelim 1 Instructor: Yuri Berest Problem 1. a. Solving the congruence 72x 36 (mod 376) is equivalent to solving the equation 72x + 376y = 36 . Now, using Euclids algorithm, we compute (72, 376) = 8 . Since 8 does not di
Delaware - MATH - 201
Math 480HOMEWORK solutions #3W1. Find all integer solutions of the equation 2x + 3y = 11 Answer. (1 + 3t, 3 2t), t Z. W2. (a) For which n is it possible to simplify the fraction39n+8 ? 65n+1339n+8 Solution. The fraction 65n+13 is reducible if and only
Delaware - MATH - 201
Rensselaer Polytechnic Institute - PHIL - 77777
julia kristevapsychoanalysis and modernitysara beardsworthJulia KristevaSUNY series in Gender Theory Tina Chanter, editorJ U L I A K R I S T E VAPsychoanalysis and ModernitySara BeardsworthSTATE UNIVERSITY OF NEW YORK PRESSPublished by State Univ
Rensselaer Polytechnic Institute - PHIL - 7777
1Copyright Jonathan Bennett [Brackets] enclose editorial explanations. Small dots enclose material that has been added, but can be read as though it were part of the original text. Occasional bullets, and also indenting of passages that are not quotation
University of Phoenix - MATH - math115
Name: Crystal Reilly Date: 4-22-2010MAT115Test 1 Chapters 1 and 2 25 problems 4 points each 100 points possible Solve all problems and attach your solutions document in your Individual Forum (IF). Remember to show all steps and check your work carefully
University of Phoenix - MATH - math 115
MAT115Test 2 Chapters 3 and 4 25 problems 4 points each 100 points possible Name: Crystal Reilly Date:_5-8-10 Solve all problems and attach your solutions document in your Individual Forum (IF). Remember to show all steps and check your work carefully. P
University of Phoenix - MATH - math 115
Name: Crystal Reilly _ Date:_5-22-10MAT115Test 3 Chapters 5, 6 and 7 25 problems 4 points each 100 points possible Solve all problems and attach your solutions document in your Individual Forum (IF). Remember to show all steps and check your work carefu
Alexandria University - PHYS - MP107
PUZZLERHave you ever wondered why a tennis ball is fuzzy and why a golf ball has dimples? A spitball is an illegal baseball pitch because it makes the ball act too much like the fuzzy tennis ball or the dimpled golf ball. What principles of physics gover
Nova Southeastern University - ACT - 5753
COUNTY OF LOS ANGELES COMPREHENSIVE ANNUAL FINANCIAL REPORTFiscal Year Ended June 30, 2009 Wendy L. Watanabe, Auditor-ControllerCOUNTY OF LOS ANGELES COMPREHENSIVE ANNUAL FINANCIAL REPORT FOR THE FISCAL YEAR ENDED JUNE 30, 2009 TABLE OF CONTENTSI.INTR
Harvard - PSYCH - 1000
The presents new theories about how men fall in love and for how long.
The Petroleum Institute - PHYS - 344
11. (a) The vertical components of the individual fields (due to the two charges) cancel, by symmetry. Using d = 3.00 m and y = 4.00 m, the horizontal components (both pointing to the x direction) add to give a magnitude ofEx ,net = 2|q|d 2(8.99 109 N m
The Petroleum Institute - PHYS - 344
14. The field of each charge has magnitude E= kq e 1.60 1019 C =k = (8.99 109 N m 2 C2 ) = 3.6 106 N C. 2 2 2 r (0.020 m) ( 0.020 m )The directions are indicated in standard format below. We use the magnitude-angle notation (convenient if one is using a
The Petroleum Institute - PHYS - 344
15. (a) The electron ec is a distance r = z = 0.020 m away. Thus, (8.99 109 N m 2 C2 )(1.60 1019 C) = = 3.60 106 N/C . EC = 2 2 4 0 r (0.020 m)e(b) The horizontal components of the individual fields (due to the two es charges) cancel, and the vertical c
The Petroleum Institute - PHYS - 344
16. The net field components along the x and y axes areEnet, x =4 0 Rq12q2 cos , 4 0 R 2Enet, y = q2 sin . 4 0 R 2The magnitude is the square root of the sum of the components-squared. Setting the magnitude equal to E = 2.00 105 N/C, squaring and
The Petroleum Institute - PHYS - 344
17. We make the assumption that bead 2 is in the lower half of the circle, partly because it would be awkward for bead 1 to slide through bead 2 if it were in the path of bead 1 (which is the upper half of the circle) and partly to eliminate a second solu
The Petroleum Institute - PHYS - 344
18. According to the problem statement, Eact is Eq. 22-5 (with z = 5d)Eact = q q 160 q = 2 2 4 0 (4.5d ) 4 0 (5.5d ) 9801 4 0 d 2and Eapprox isEapprox =2qd 2 q = . 3 4 0 (5d ) 125 4 0 d 2The ratio isEapprox Eact = 0.9801 0.98.
The Petroleum Institute - PHYS - 344
19. (a) Consider the figure below. The magnitude of the net electric field at point P is 1 q Enet = 2 E1 sin = 2 2 2 4 0 ( d / 2 ) + r d /2( d / 2)2+ r2=1qd4 0 ( d / 2 )2 + r 2 3/ 2 &gt; For r &gt; d , we write [(d/2)2 + r2]3/2 r3 so the expression abo
The Petroleum Institute - PHYS - 344
20. Referring to Eq. 22-6, we use the binomial expansion (see Appendix E) but keeping higher order terms than are shown in Eq. 22-7:E=q d 3 d2 1 d3 d 3 d2 1 d3 + 4 z2 + 2 z3 + 1 z + 4 z2 2 z3 + 2 1 + z 4o z q d3 qd + + = 2o z3 4o z5Therefore, in the t
The Petroleum Institute - PHYS - 344
21. Think of the quadrupole as composed of two dipoles, each with dipole moment of magnitude p = qd. The moments point in opposite directions and produce fields in opposite directions at points on the quadrupole axis. Consider the point P on the axis, a d
The Petroleum Institute - PHYS - 344
23. We use Eq. 22-3, assuming both charges are positive. At P, we haveEleft ring = Eright ring 4 0 ( R + R2q1 R2 3/ 2)=q2 (2 R) 4 0 [(2 R ) 2 + R 2 ]3/ 2Simplifying, we obtainq1 2 = 2 q2 53/ 2 0.506.
The Petroleum Institute - PHYS - 344
25. From symmetry, we see that the net field at P is twice the field caused by the upper semicircular charge + q = R (and that it points downward). Adapting the steps leading to Eq. 22-21, we findj Enet = 2 () sin 4 0 R9090 q j. = 2 2 0 R (a) With
The Petroleum Institute - PHYS - 344
26. We find the maximum by differentiating Eq. 22-16 and setting the result equal to zero.d qz dz 4 z 2 + R 2 0F GG HcI q R 2z J= h JK 4 cz + R h2 3/ 2 0 222 5/ 2=0which leads to z = R / 2 . With R = 2.40 cm, we have z = 1.70 cm.
The Petroleum Institute - PHYS - 344
27. (a) The linear charge density is the charge per unit length of rod. Since the charge is uniformly distributed on the rod,=q 4.231015 C = = 5.19 1014 C/m. L 0.0815 m(b) We position the x axis along the rod with the origin at the left end of the rod,
The Petroleum Institute - PHYS - 344
28. We use Eq. 22-16, with q denoting the charge on the larger ring:qz qz 13 + = 0 q = Q 2 2 3/ 2 2 2 3/ 2 4 0 ( z + R ) 4 0 [ z + (3R) ] 53/ 2= 4.19Q .Note: we set z = 2R in the above calculation.
The Petroleum Institute - PHYS - 344
29. The smallest arc is of length L1 = r1 /2 = R/2; the middle-sized arc has length L2 = r2 / 2 = (2 R) / 2 = R ; and, the largest arc has L3 = (3R)/2. The charge per unit length for each arc is = q/L where each charge q is specified in the figure. Follow
The Petroleum Institute - PHYS - 344
30. (a) It is clear from symmetry (also from Eq. 22-16) that the field vanishes at the center. (b) The result (E = 0) for points infinitely far away can be reasoned directly from Eq. 2216 (it goes as 1/z as z ) or by recalling the starting point of its de
The Petroleum Institute - PHYS - 344
31. First, we need a formula for the field due to the arc. We use the notation for the charge density, = Q/L. Sample Problem 22-3 illustrates the simplest approach to circular arc field problems. Following the steps leading to Eq. 22-21, we see that the g
The Petroleum Institute - PHYS - 344
33. Consider an infinitesimal section of the rod of length dx, a distance x from the left end, as shown in the following diagram. It contains charge dq = dx and is a distance r from P. The magnitude of the field it produces at P is given by dE = 1 dx . 4
The Petroleum Institute - PHYS - 344
34. From Eq. 22-26, we obtain z E= 1 2 2 0 z + R2 2 5.3 106 C m 1 = 2 ( 8.85 1012 C2 /N m 2 ) 12cm(12cm ) + ( 2.5cm )22 = 6.3103 N C.
The Petroleum Institute - PHYS - 344
35. At a point on the axis of a uniformly charged disk a distance z above the center of the disk, the magnitude of the electric field isE= z 1 2 2 0 z + R2LM NOP Qwhere R is the radius of the disk and is the surface charge density on the disk. See Eq
The Petroleum Institute - PHYS - 344
36. We write Eq. 22-26 as E z = 1 2 Emax ( z + R 2 )1/ 2 and note that this ratio is 2 (according to the graph shown in the figure) when z = 4.0 cm. Solving this for R we obtain R = z 3 = 6.9 cm.1
Dallas - HIST - 1302
Angelica Casas Larry Pool History 1302 July 21, 2009 The Jungle Throughout the history of society, economic competition has been a constant struggle. The Jungle by Upton Sinclair demonstrates an example of this struggle. It is, questionably, one of the mo
UC Irvine - MGMT - 38004
Management5Final19:22 Chapter 6: Individual and Group Decision Making Decision Making Process of specifying the nature of particular problem or opportunity and selecting among the available alternatives to solve the problem or capitalize on the opportuni
Cornell - CHEM - 2070
Cornell - CHEM - 2070