Web Services et XML

Shared by: q8xc6S
Categories
Tags
-
Stats
views:
12
posted:
3/12/2012
language:
pages:
41
Document Sample
scope of work template
							Web Services

ANNITRA NOUREDDINE
EL BAZ SAID
Plan
 Définition
 SOAP
 WSDL
 Exemple
 Conclusion
Définition
   Les Web Services sont des services offerts via
    le web.
   Par exemple, un client (Application développée
    sous n'importe quel langage) demande le prix
    d’un article en envoyant un message sur le web.
    Ce message contient la référence de l’article. Le
    Web Service va recevoir la référence, effectuer
    le traitement du service et renvoyer le prix au
    client via un autre message.
SOAP

Simple Object Access Protocol
Protocole SOAP
   SIMPLE OBJECT ACCESS PROTOCOL
   Protocole d’échange de messages (client /
    serveur)
   Est assez léger, simple et facile à déployer
   Basé entièrement sur XML
     communication   en univers hétérogène
   Standard W3C (Initiative IBM et Microsoft)
Protocole SOAP
Fonctionnement

                     Appel
                 SOAP (HTTP+XML)
                                    Serveur
    Client                          (WebService)
                  SOAP (HTTP+XML)
                       Réponse
Message SOAP

Concepts

Message SOAP = Message XML

   Déclaration XML
   Enveloppe SOAP
     Entête SOAP (HEADER)
     Corps SOAP (BODY)
Message SOAP (Appel)
Message SOAP (Réponse)
        WSDL

Web Services Description Language
WSDL
   Langage de définition de Web Services
   Basé entièrement sur XML
   Standard W3C (Initiative IBM et Microsoft)
   Décrit le type d’un service web (méthodes, types des
    paramètres)
   Décrit les aspects techniques d’implantation d’un
    service web (quel est le protocole utilisé, quel est
    l’adresse du service et le port)
   Utilise le système de typage de XML Schéma
Schéma fichier WSDL
    Schéma fichier WSDL
cette balise décrit
les types utilisés
    Schéma fichier WSDL

cette balise décrit la
structure d’un message
échangé
    Schéma fichier WSDL




cette balise décrit un
ensemble d’opérations
(interface d’un service web)
    Schéma fichier WSDL




cette balise décrit une
opération réalisée
par le service web.

Une opération reçoit
des messages et envois
des messages
    Schéma fichier WSDL




cette balise décrit le
lien entre un protocole
(http) et un portType.
   Schéma fichier WSDL




cette balise décrit un
service comme un
ensemble de ports.
    Schéma fichier WSDL




cette balise décrit un
port au travers duquel
il est possible d’accéder
à un ensemble
d’opérations


Un port référence un Binding
__
Service Web
 Utilisation des compétences des développeurs
  ASP existants
 Facile à créer, à déployer et à administrer en
  tant qu'application Web
 L'extension du fichier est .asmx
 La destination est représentée par l'URL
Création d'un service Web (1)
 Ouvrez Microsoft Visual Studio® .NET 2003
 Sélectionnez le langage
 Sélectionnez le type de projet :
  Service Web ASP.NET
Création d'un service Web (1)
   Ouvrez Microsoft Visual Studio® .NET 2005
   Sélectionnez visual web developer
   Sélectionnez le type de projet :
    Service Web ASP.NET
   Sélectionnez le langage
Création d'un service Web (2)
 .asmx et .asmx.cs
 Web.config
 Global.asax
 WebService1.vsdisco
Création d'un service Web (2)

 .asmxet .cs
 Web.config
Création d'un service Web (3)
   Dans Service1.asmx

          <%@ WebService Language="c#"
             Codebehind="Service1.asmx.cs"
             Class="WebService1.Service1"
          %>
          <%@ WebService Language="C#"
Lorsque vous ouvrez le fichier .asmx.cs dans un éditeur de code source, vous verrez le code
    CodeBehind="~/App_Code/Service1.cs"
suivant. Il contient une balise WebService. Ce code contient également le langage que vous
utilisez. La balise Codebehind apparaît également. Elle vous indique le fichier code behind de votre
application. Vous pouvez également voir la classe que vous souhaitez instancier.
         Class="Service1" %>
Création d'un service Web (4)
Dans Service1.asmx.cs ou Service1.cs
 Ajoutez la propriété Namespace de l'attribut WebService
     [WebService(Namespace="http://localhost/webservice1/")]
     public class Service1 : System.Web.Services.WebService
     Cliquez sur l'icône Ne pas commenter les lignes sélectionnées pour
      désactiver le commentaire par défaut pour le code suivant :
    [WebMethod]                  [WebMethod]
    public string HelloWorld()     public int Ajouter(int Valeur1, int Valeur2)
    {                              {
        return "Hello World";        return Valeur1 + Valeur2;
    }                              }

                                  [WebMethod]
                                    public int Soustraire(int Valeur1, int Valeur2)
                                    {
                                      return Valeur1 - Valeur2;
                                    }
Création d'un service Web (5)
   Compilez le service Web




               Créez votre application en utilisant le menu Générer. Si aucune
               erreur ne survient, la capture d'écran apparaîtra à droite de l'écran.
               Après avoir compilé votre application Visual Studio .NET, vous verrez
               un fichier .dll et .pdb dans le répertoire bin.
Création d'un service Web (6)
   Lancez le service Web
Création d'un service Web (6)
   Lancez le service Web
Création d'un client de service Web
(1)
   Créez une application console de Microsoft
    Visual C#™
Création d'un client de service Web
(2)
   Ajoutez une référence Web (1)




La première étape consiste à ajouter une référence à notre service Web HelloWorld dans
l'application client. Pour cela, vous pouvez cliquer avec le bouton droit sur Références dans
Création d'un client de service Web
(3)
 Ajoutez une référence Web (2)




Lorsque vous appuyez sur ENTRÉE, Visual Studio .NET télécharge le fichier WSDL et l'affiche à
gauche de l'écran. Cliquez sur le bouton Ajouter la référence pour générer le fichier proxy.
Création d'un client de service Web
(4)
   Le fichier proxy suivant est généré :
    Reference.cs
    Vous pouvez constater que
    Visual Studio .NET utilise
    Wsdl.exe en arrière plan pour
    générer un fichier Proxy. Vous
    verrez qu'un fichier nommé
    Reference.exe a été ajouté dans
    l'Explorateur de solutions. Ce
    fichier Proxy fournira un support
    IntelliSense® pour ajouter
    facilement du code à votre client
    de service Web.
Création d'un client de service Web
(5)
   Code client
        using System;
        namespace ConsoleApplication1
        {
          class Class1
            {
                static void Main(string[] args)
              {
                localhost.Service1 wsproxy = new localhost.Service1();
                Console.WriteLine(wsproxy.HelloWorld());
              }
            }
        }


Une fois que vous avez ajouté une référence Web, vous devez déclarer une variable à votre client
de service Web. J'ai utilisé wsproxy comme exemple dans cette fonction. Comment est-ce que je
Création d'un client de service Web
(5)
   Code client




     private void button1_Click(object sender, EventArgs e)
          {
            localhost.Service1 MonTest = new localhost.Service1();
            textBox3.Text = MonTest.Ajouter(int.Parse(textBox1.Text),
     int.Parse(textBox2.Text)).ToString();
          }


Une fois que vous avez ajouté une référence Web, vous devez déclarer une variable à votre client
de service Web. J'ai utilisé wsproxy comme exemple dans cette fonction. Comment est-ce que je
Création d'un service Web client
(6)
   Lancez le client du service Web




Créez à présent votre application. Un fichier .exe sera généré dans le répertoire bin. Une fois que
vous avez exécuté votre application, vous pourrez lire Hello World. Vous venez en fait de créer
votre premier fournisseur de service Web. Vous avez également créé un client qui utilise ce service
Web.
Références
   Programmation du Web avec les services Web
    XML
    Aide Visual Studio .NET
    ms-help://MS.VSCC/MS.MSDNVS.1036/vsent7/html/vxconProgrammableWebServices.htm
   Sérialisation XML et SOAP
    Aide Visual Studio .NET
    ms-help://MS.VSCC/MS.MSDNVS.1036/cpguide/html/cpconserialization.htm
   http://lfe.developpez.com/WebService/BCB/
   http://www.microsoft.com/france/msdn/vcsharp/googleIt.mspx


   Communauté des services Web
    Rendez-vous à l'adresse
    http://msdn.microsoft.com/newsgroups/managed/default.asp (en anglais) ou
    http://communities.microsoft.com/newsgroups/default.asp?icp=France_msd
    n&slcid=fr-fr
    Sur le site anglais, dans le cadre de gauche, développez successivement
    .NET Development > Framework > dotnet.framework.aspnet.webservices
Conclusion
Conclusion
   Avantages :
     Des  standards simples (SOAP, WSDL…)
     Multi Protocole / Multi OS / Multi Langage



   Inconvénients :
     Jeunesse
     Sécurité

						
Related docs
Other docs by q8xc6S
lezioni2 3 c
Views: 3  |  Downloads: 0
03095r1P802 15 TG3a Broadcom CFP Presentation
Views: 4  |  Downloads: 0
Image compression
Views: 10  |  Downloads: 0
sum drpalin
Views: 29  |  Downloads: 0
TEAMSTEPPS 05
Views: 11  |  Downloads: 0
BOS Meeting Minutes January 2010 193100351
Views: 1  |  Downloads: 0
IBM 80 column punch card format
Views: 28  |  Downloads: 0