La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Adressage et messagerie des Services Web Ziriad Saibi Relation technique éditeurs de logiciels Microsoft France.

Présentations similaires


Présentation au sujet: "Adressage et messagerie des Services Web Ziriad Saibi Relation technique éditeurs de logiciels Microsoft France."— Transcription de la présentation:

1 Adressage et messagerie des Services Web Ziriad Saibi ziriads@microsoft.comziriads@microsoft.com Relation technique éditeurs de logiciels Microsoft France

2 Sommaire Principes de messagerie Messagerie SOAP Adressage des Services Web

3 Principes de messagerie Systèmes de messagerie Une technologie de communication   Objectifs de conception : communication asynchrone et fiable, de bout en bout   Données échangées via messages Expéditeurs et destinataires   Les services assument souvent les deux rôles   Ne pas confondre avec l’architecture client/serveur Les données constituent le message   Très structuré   En-tête : les données d’exploitation   Corps : les données d’application

4 Principes de messagerie – Remarques Systèmes de messagerie Une technologie de communication   Objectifs de conception : communication asynchrone et fiable, de bout en bout   Données échangées via messages Expéditeurs et destinataires   Les services assument souvent les deux rôles   Ne pas confondre avec l’architecture client/serveur Les données constituent le message   Très structuré   En-tête : les données d’exploitation   Corps : les données d’application

5 Principes de messagerie Une nouvelle façon de communiquer Communication classique   Programmation par composants et orientée objet   Un style de messagerie unique, doté de fonctions   Style appel de fonction demande-réponse RPC Technologies orientées message existantes   MSMQ (Microsoft Message Queuing)   MQ-Series Messagerie des Services Web   Nombreux modèles d’échange de messages   Messages ciblés vers les services et non vers les objets

6 Principes de messagerie Importance de la messagerie Changement du modèle de processus du système   Transformation de tous les éléments possibles Un meilleur modèle pour les processus d’entreprise   Mappage plus naturel – adaptation à la technique RPC   Échange de messages directement lié à la croissance de l’activité   Réduction du système de maintenance

7 Principes de messagerie Quelques styles de messagerie Demande-réponse   SOAP 1.1 (pris en charge par HTTP en natif) Mode autonome après lancement   Pas d’attente de réponse   Demande et réponse constituent deux messages unidirectionnels. Monologue   Flux de messages Dialogue   Plusieurs échanges interdépendants Création possible de modèles à partir d’un mélange de styles

8 Principes de messagerie Création du message Opération Fonction RPCDemande SéquenceÉvénement

9 Principes de messagerie Modèles de messagerie Éditeur-abonné   L’abonné envoie un message unidirectionnel ou une demande-réponse.   L’éditeur envoie des messages autonomes après lancement.   L’abonné ou l’éditeur termine la communication.   Le traitement d’événement est un exemple archétypal. Autres modèles   Routeur de messages   Canal de messages non distribués   Fractionneur de messages   Etc...

10 Le fichier ASMX fournit les services Web élémentaires.   SOAP et WSDL sur HTTP   Uniquement l’échange de messages demande-réponse   Propriété OneWay WSE fournit des services Web avancés par-dessus ASMX.   Mise en œuvre des spécifications WSA envisagées   Adressage des Services Web   Modèle de programmation de messagerie Messagerie SOAP ASMX et WSE (Web Service Enhancements)

11 Le fichier ASMX fournit les services Web élémentaires.   SOAP et WSDL sur HTTP   Uniquement l’échange de messages demande-réponse   Propriété OneWay WSE fournit des services Web avancés par-dessus ASMX.   Mise en œuvre des spécifications WSA envisagées   Adressage des Services Web   Modèle de programmation de messagerie Messagerie SOAP – Remarques ASMX et WSE (Web Service Enhancements)

12 Messagerie SOAP Transports et messagerie WSE Transports   HTTP   TCP   En-cours Messagerie   Pièces jointes SW et DIME   Charge utile ajoutée à la suite de l’enveloppe SOAP   Sera remplacé par MTOM   Adressage des Services Web Sécurité Messagerie fiable Transactions Messagerie XML Métadonnées Transports

13 Messagerie SOAP Classes principales de la messagerie WSE Messagerie unidirectionnelle   SoapSender   SoapReceiver Messagerie demande-réponse   SoapClient   SoapService   Types personnalisés XmlSerializable SoapEnvelope   Repose sur la classe XmlDocument   Propriétés additionnelles (Corps, En-tête)   Accès XML (XPath, XmlReader)

14 Messagerie SOAP Scénario de messagerie unidirectionnelle (multidiffusion) SoapSender SoapReceiver XML

15 Messagerie SOAP Envoi d’un message avec SoapSender using System.Xml; using Microsoft.Web.Services; using Microsoft.Web.Services.Messaging; using Microsoft.Web.Services.Addressing; class MyTcpClient { public void MyClientMethod() { Uri destUri = new Uri("soap:tcp//MyHost/MyService"); EndpointReference endPoint = new EndpointReference(destUri); SoapSender sender = new SoapSender(endPoint); SoapEnvelope message = new SoapEnvelope(); message.Context.Addressing.Action ="MyReceiver"; XmlElement body = message.CreateBody(); message.SetBodyObject(" Joe "); sender.Send(message); }

16 Messagerie SOAP Enregistrement d’un SoapReceiver class MyReceiver : Microsoft.Web.Services.Messaging.SoapReceiver { protected override void Receive( Microsoft.Web.Services.SoapEnvelope message ) { // Traitement des données contenues dans le message } using Microsoft.Web.Service.Messaging; using Microsoft.Web.Services.Addressing; class MyReceiverApplication { public void MyReceiverApplication() { MyReceiver myReceiver = new MyReceiver(); Uri destUri = new Uri("soap.tcp://MyHost/MyService"); EndpointReference endPoint = new EndpointReference(destUri); SoapReceivers.Add(endPoint, myReceiver); }

17 Messagerie SOAP Messagerie bidirectionnelle (demande-réponse) SoapClient SoapService XML Demande XML Réponse

18 Messagerie SOAP – Remarques Messagerie bidirectionnelle (Demande-réponse) SoapClient SoapService XML Demande XML Réponse

19 Messagerie SOAP Utilisation du SoapClient pour la demande-réponse using Microsoft.Web.Services; using Microsoft.Web.Services.Messaging; class MyHttpClient : SoapClient { public MyHttpClient(EndpointReference dest) : base(dest) { } [SoapMethod("MyRequest")] public SoapEnvelope MyRequest(SoapEnvelope envelope) { return base.SendRequestResponse("MyRequest",envelope); }

20 Messagerie SOAP Envoi d’une demande via SoapClient using Microsoft.Web.Services; using Microsoft.Web.Services.Messaging; class MyHttpClientHost { MyHttpClient client = new MyHttpClient("http://www.MySite/MyService.ashx"); SoapEnvelope message = new SoapEnvelope(); message.SetBodyObject(" Joe "); SoapEnvelope returnEnvelope = client.MyRequest(message); // Traitement de la réponse ici… }

21 Messagerie SOAP Enregistrement d’un SoapService avec HTTP... <section name="microsoft.web.services" type="Microsoft.Web.Services.Configuration.WebServicesConfiguration, Microsoft.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> <add verb="*" path="MyService.ashx" type="MyCompany.MyHttpService, MyServiceAssemblyName"/>...

22 Messagerie SOAP Mise en œuvre de SoapService sur une page des Services Web using Microsoft.Web.Services; using Microsoft.Web.Services.Messaging; namespace MyCompany { class MyHttpService : SoapService { [SoapMethod("MyRequest")] public SoapEnvelope MyRequest(SoapEnvelope envelope) { // … Traitement du message entrant ici SoapEnvelope response = new SoapEnvelope(); response.SetBodyObject(" 0 "); return response; }

23 Envoi/réception de messages synchrones SOAP Démonstration

24 Adressage des Services Web Les besoins des Services Web avancés Communications longue durée   Limites de délai d’attente forcées par protocole   Accusé de réception et interrogation immédiats Connectivité intermittente (appareils mobiles)   Pas de connexion régulière Communications basées sur les événements   Modèle Éditeur-abonné   Couplage étendu Aide prescriptive   Remplacement du mode requête-réponse par une paire de messages asynchrones unidirectionnels

25 Adressage des Services Web – Remarques Les besoins des Services Web avancés Communications longue durée   Limites de délai d’attente forcées par protocole   Accusé de réception et interrogation immédiats Connectivité intermittente (appareils mobiles)   Pas de connexion régulière Communications basées sur les événements   Modèle Éditeur-abonné   Couplage plus large Aide prescriptive   Remplacement du mode requête-réponse par une paire de messages asynchrones unidirectionnels

26 Qu’est-ce qu’une ressource ?   Un service   Un point de terminaison   Un message Fournit des mécanismes d’adressage des ressources   Expédition de ces adresses dans des messages   Transmission des messages à ces ressources L’adressage est indépendant du transport Pas de contrainte pour les ressources   Possibilité d’être construites, partitionnées, nommées ou adressées de façon arbitraire Adressage des Services Web Une large gamme de modèles d’échange de messages

27 Les adresses de ressources contiennent deux éléments de données :   Un emplacement réseau   Un port   Une sous-adresse   Un ensemble arbitraire de propriétés   L’interprétation dépend de la mise en oeuvre Tous deux sont capturés dans un EndpointReference   Sert de référence de ressource Étend le WSDL. Adressage des Services Web Modèle de ressources

28 Les adresses de ressources contiennent deux éléments de données :   Un emplacement réseau   Un port   Une sous-adresse   Un ensemble arbitraire de propriétés   L’interprétation dépend de la mise en oeuvre Tous deux sont capturés dans un EndpointReference   Sert de référence de ressource Étend le WSDL. Adressage des Services Web – Remarques Modèle de ressources

29 <wsa:EndpointReference xmlns:wsa='http://schemas.xmlsoap.org/ws/2003/03/addressing' xmlns:m='urn:anycorp:supplies:orders' xmlns:wsp='http://schemas.xmlsoap.org/ws/2002/12/policy' > http://www.Any.com/order/ws.asmx Services.Supplier.Order... Propriété [Adresse] - Adresse réseau de la ressource [Propriétés de la référence] - Autres informations d’adressage Stratégie pour cette ressource Adressage des Services Web Référence de point de terminaison

30 Adressage des Services Web En-têtes d’information des messages L’adressage des Services Web définit un grand nombre de propriétés pour les messages SOAP Destination et Action sont des propriétés obligatoires Destination   Emplacement réseau prévu pour le message   Fournie par l’en-tête Adresse Action   Spécifie l’intention du message   Probablement fournie par la déclaration de politique

31 Adressage des Services Web En-têtes d’information des messages PropriétéEn-têteRemarques destinationwsa:Toadresse wsa: recipientwsa:Recipientréférence de point de terminaison source endpointwsa:Fromréférence de point de terminaison reply endpointwsa:ReplyToréférence de point de terminaison fault endpointwsa:FaultToréférence de point de terminaison actionwsa:Action message idwsa:MessageID relationshipwsa:RelatesTofournit une corrélation **De wsa:ReferenceProperties

32 <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2003/03/addressing"> urn:somecompany:method http://www.client.com/anon uuid:4354afe02fe4 http://www.Any.com/order/ws.asmx Services.Supplier.Order... Adressage des Services Web En-têtes d’information des messages

33 Adressage des Services Web Mise en œuvre Modélisation des en-têtes d’information des messages   From (De), To (À), ReplyTo (Répondre à), FaultTo (Par défaut à), Action Production d’un message autonome Prise en charge totale de la communication asynchrone Résolution des problèmes liés aux éléments suivants :   Intermédiaires   Communications longues   Connectivité intermittente   Communication basée sur un événement

34 Adressage des Services Web – Remarques Mise en œuvre Modélisation des en-têtes d’information des messages   From (De), To (À), ReplyTo (Répondre à), FaultTo (Par défaut à), Action Production d’un message autonome Prise en charge totale de la communication asynchrone Résolution des problèmes liés aux éléments suivants :   Intermédiaires   Communications longues   Connectivité intermittente   Communication basée sur un événement

35 Adressage des Services Web Messagerie asynchrone (Éditeur-abonné) Abonné XML Éditeur XML L’abonné s’enregistre auprès de l’éditeur. La connexion est coupée. L’éditeur envoie un message à l’abonné. Un événement se produit.

36 Envoi/réception de messages asynchrones SOAP Démonstration

37 Résumé Qu’avons-nous appris ?   Les messages fournissent intrinsèquement un mécanisme de modélisation du processus d’entreprise   L’adressage est un activateur clé de la messagerie avancée   WSE prend en charge les nouveaux protocoles et modèles de messagerie Étapes suivantes   Modéliser les processus d’entreprise à l’aide de messages   Identifier les schémas d’échange de messages dans vos systèmes connectés   Créer des services Web avec WSE 2.0

38 © 2004 Microsoft Corporation. Tous droits réservés. Cette présentation est proposée à des fins purement informatives. MICROSOFT EXCLUT TOUTE GARANTIE EXPRESSE OU IMPLICITE QUANT AU PRÉSENT DOCUMENT.


Télécharger ppt "Adressage et messagerie des Services Web Ziriad Saibi Relation technique éditeurs de logiciels Microsoft France."

Présentations similaires


Annonces Google