Exporter (0) Imprimer
Développer tout

Découvrir et décrire un service Web à l'aide d'UDDI, 2ème partie

Scott Seely
Microsoft Corporation

17 octobre 2001

Introduction

Dans l'article précédent, nous avons reçu la visite de Karsten Januszewski de l'équipe Microsoft® UDDI. Karsten a expliqué ce qu'était UDDI, la raison de son existence et comment l'utiliser. Dans cet article, nous allons décrire ce qu'il nous a fallu faire pour enregistrer le service Favorites de Cold Rooster dans le registre Microsoft UDDI. Comme nous n'avions encore jamais eu recours au registre UDDI auparavant, nous avons dû commencer depuis le tout début.

Pour vous enregistrer auprès d'UDDI

Nous n'avions jamais enregistré Cold Rooster sur le site Microsoft UDDI Lien non MSDN France Site en anglais; notre première tâche a donc été de créer un compte sur ce site. Pour enregistrer un compte, vous devez vous connecter avec Passport. Une fois connecté, vous pouvez choisir d'utiliser sur UDDI l'adresse de courrier électronique liée à votre compte Passport, ou bien une autre. J'ai décidé d'opter pour l'adresse crooster@microsoft.com, car je ne serai pas la seule personne à utiliser UDDI dans mon équipe. Nous avions déjà créé ce compte de courrier électronique pour des besoins antérieurs de Cold Rooster Consulting et ce choix nous a donc semblé logique.

L'écran d'enregistrement demande aussi d'autres coordonnées : nom du postulant, son numéro de téléphone et une adresse de courrier électronique. Pour valider l'inscription, vous devez préciser que vous êtes d'accord avec les conditions d'utilisation (voir Terms of Use Lien non MSDN France Site en anglais).

Une fois que vous avez inscrit vos coordonnées dans le registre et que vous avez accepté les conditions d'utilisation, le site UDDI vous envoie un message électronique pour confirmer l'adresse fournie. Cliquez sur le lien de ce message et vous pourrez alors administrer votre compte UDDI. Pour l'administration, vous devez ajouter des données professionnelles au registre, publier des tModels et éditer les détails de l'enregistrement. La figure 1 présente la page d'administration.

Figure 1.
Figure 1. Page d'administration UDDI

Ajoutez votre entreprise au registre UDDI

Après avoir ouvert un compte sur le site Microsoft UDDI, la tâche suivante consistait à ajouter Cold Rooster Consulting au registre UDDI. Nous pouvions inscrire notre entreprise via la page Web ou par l'API UDDI, avec le SDK .NET ou le SDK COM. J'ai décidé d'utiliser l'interface utilisateur car je n'avais l'intention d'enregistrer le tout qu'une seule fois. Si jamais nous étions un jour amenés à modifier régulièrement certains aspects de l'interface, nous automatiserions alors ce processus pour réduire les risques d'erreurs. Le fait d'ajouter notre entreprise au registre permet aux utilisateurs de nous retrouver sur la base de notre activité et des types de services Web que nous proposons. Pour ajouter Cold Rooster Consulting au registre UDDI, nous nous sommes rendus au lien "Add a new business" de la page d'administration (Figure 1). La première page demande le nom de l'entreprise et sa description. Pour Cold Rooster, j'ai entré :

Name : Cold Rooster Consulting
Description : Entreprise fictive utilisée par l'équipe MSDN Architectural Samples

Une fois l'entreprise inscrite au registre UDDI, j'ai pu ajouter d'autres informations :

  • Contacts : Personnes à contacter pour obtenir des renseignements sur les services fournis par l'entreprise. Nous avons ajouté plusieurs membres de l'équipe MSDN Architectural Samples à la liste des contacts.
  • Services : tModels (fichiers WSDL) exposés par l'entreprise. Nous avons ajouté les tModels Account, Logon et Report à notre entrée UDDI.
  • Identifiers : Données d'identification uniques de l'entreprise (un numéro d'enregistrement officiel de l'entreprise par exemple). Comme Cold Rooster n'en a pas, nous avons laissé ce champ vide.
  • Business classifications : Il s'agit de la situation géographique de l'entreprise et de la nature de son activité. Cold Rooster Consulting se trouve aux États-Unis, dans l'État de Washington.
  • Discovery URLs : Ce champ indique l'endroit où l'on peut trouver des informations sur l'entreprise.

Nous commencerons par effectuer les opérations les plus simples et garderons les services pour la fin.

Ajout de contacts à UDDI

Cette tâche est relativement simple. Comme pour n'importe quel formulaire d'adresse, il vous suffit d'entrer les informations générales concernant les différents contacts. À partir de la description et des remarques d'utilisation, les utilisateurs potentiels se servent de ces informations pour contacter votre entreprise et acquérir une licence pour le service Web, obtenir de l'aide ou vous contacter en cas de questions relatives à votre activité. La figure 2 vous montre comment se présente le formulaire d'informations sur les contacts.

Figure 2.
Figure 2. Page d'information sur les contacts

Classification de l'entreprise

La plupart des entreprises peuvent être classifiées en fonction de leur activité. Pour cette classification, plusieurs taxinomies sont disponibles avec UDDI. Vous pouvez utiliser les taxinomies suivantes :

  • North American Industry Classification System (NAICS-1997)
  • Universal Standard Products and Services Codes (UNSPSC-7.03)
  • ISO 3166 Geographic Taxonomy
  • Standard Industrial Classification (SIC-1987)
  • GeoWeb Geographic Classification
  • UDDI Types Taxonomy
  • Nous avons enregistré Cold Rooster sous toutes ces taxinomies, excepté sous UDDI Types, car cette taxinomie sert à classifier les informations sur les tModels et les services.
  • Pour savoir ce que nous voulions enregistrer, nous avons dû considérer la nature de l'activité de Cold Rooster et son emplacement géographique. Cold Rooster Consulting est basé à Redmond, Washington (États-Unis). Elle fournit des services de conseil en informatique concernant des projets spécifiques, et délivrés sur site par du personnel spécialement affecté à cette tâche. De plus, elle est spécialisée dans le développement sur Windows et sur Internet. Sachant cela, il nous a fallu définir une classification adaptée pour les six systèmes. Le tableau 1 montre comment nous avons classifié l'entreprise pour chacun de ces systèmes.
    Système de classificationClassification
    NAICS
    • 541511: Custom Computer Programming Services
    • 541512: Computer Systems Design Services
    UNSPSC
    • 81.11.16.07.00: Programming for C or C++
    • 81.11.16.03.00: Programming for HTML
    • 81.11.16.01.00: Programming for Microsoft® Visual Basic®
    • 81.11.16.12.00: Programming or Proprietary Languages (y compris C#)
    • 81.11.21.06.00: Application Service Providers (nous hébergeons des services Web)
    • 81.11.21.03.00: World Wide Web (WWW) site design services
    ISO 3166
    • US-WA (Washington, USA, World)
    SIC
    • 7371: Computer programming services
    • 7372: Information retrieval services
    GeoWeb Geographic Classification
    • 518816 (Redmond, Washington, USA, North America, World)

Tableau 1. Exemple de classification sur UDDI

La classification de notre entreprise est maintenant complète. L'étape suivante consiste à ajouter les trois tModels.

Ajout des tModels

Au cas ou vous n'auriez pas lu l'article de la semaine dernière, un tModel est un modèle type. Pour les services Web, les tModels sont généralement des fichiers WSDL. Leur fonction est de définir les types utilisés par le service Web, ainsi que les messages et opérations relatifs à ce service. Pour un tModel donné, je sais quelles sont les opérations de service Web implémentées par l'entité qui implémente ce tModel et comment accéder à ces opérations. Vous devez inscrire les fichiers WSDL en tant que tModels parce qu'il peut exister plusieurs implémentations de ces tModels.

Côté serveur, le service Web Favorites est composé de trois services Web : un service de connexion (Logon), un service de compte (Account), et un service de rapport (Report). Le service Web Logon permet au détenteur d'une licence de se connecter et d'obtenir un jeton. Grâce à ce jeton, cette personne peut accéder aux autres méthodes des services Web Account et Report. Pour ajouter des fichiers WSDL, vous devez les déployer sur un serveur accessible via l'Internet public. C'est à ce moment également que vous devez utiliser la classification UDDI.

Pour ajouter un tModel, il vous suffit de cliquer sur "Add a new tModel" dans la page d'administration (Figure 1). Vous devez alors indiquer des informations de base sur le tModel : son nom, sa description et l'emplacement du document WSDL. Par cette opération, vous classifiez le tModel en tant que document WSDL et publiez les informations sur le registre UDDI. Tout cela est plutôt simple. La figure 3 montre les informations entrées pour le tModel Logon.

Figure 3.
Figure 3. Informations sur le tModel Logon

Sur l'écran suivant, vous pouvez ajouter les classifications des services et les identificateurs d'entreprise. Ces données sont les mêmes que celles que vous avez pu donner concernant les informations d'entreprise. Pour la classification des services, nous n'avons utilisé que la classification UDDI. Vous devrez cliquer sur différents liens de façon à spécifier les informations suivantes :

  • Types utilisés pour les tModels
  • Spécifications pour un service Web
  • Spécifications pour un service Web décrit en WSDL
  • Lors de l'enregistrement du service Favorites de Cold Rooster, j'ai suivi ces étapes pour Logon.WSDL, Account.WSDL et Report.WSDL. L'inscription dans le registre UDDI était alors terminée et les informations disponibles dans le registre.

Définition des services

Une fois que les tModels sont en place, vous devez encore ajouter les services pour déclarer que ces services existent. Pour cela, retournez à la page d'administration et vous verrez cette fois-ci apparaître votre entreprise dans la liste qui s'affiche sous "Add a new business" (figure 1). Sélectionnez votre entreprise et rendez-vous à "Services". Puis cliquez sur "Add a Service". À la première page, vous devez donner les détails relatifs au service. Pour le service Web de connexion, j'ai entré les informations suivantes :

  • Name : Logon
  • Description : Valide le détenteur de la licence et fournit un jeton d'accès

Cela fait, j'ai classifié le service une fois encore de la façon suivante : "Spécification d'un service Web décrit en WSDL". J'ai ensuite lié le service au tModel Logon déjà enregistré. Dans "Define a new binding", j'ai rempli les champs de la façon suivante :

  • Access point : https://Coldrooster.com/SSF/Logon.asp
  • URL type : http
  • Description : Point de terminaison d'un service Web de connexion de Cold Rooster Consulting

Pour terminer cette opération, il me fallait associer le service au service Web Favorites : tModel Logon. Dans Specification Signatures, sélectionnez "Add specification signature". Pour voir les modèles classés par nom, entrez "Favorites Web Service". Vous verrez apparaître les trois tModels enregistrés pour le service Favorites. Sélectionnez "Favorites Web Service: Logon" et appuyez sur "Continue". Une page Web s'affiche sur laquelle vous devez éditer d'autres informations sur le point de terminaison. J'ai rempli ces champs de la façon suivante :

  • Edit specification signature ; Description : Implémentation par Cold Rooster du service Web Favorites : tModel Logon
  • Instance details ; Parameters : http://msdn.microsoft.com/library/?url=/library/en-us/dncold/html/ssfapiref.asp?frame=true
  • Instance details ; Description : Document de référence API
  • Overview document ; Document location : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dncold/html/ssf1sec.asp
  • Overview document; Description : Informations de sécurité côté serveur sur Favorites

Cela fait, j'ai cliqué à nouveau sur "Continue". J'ai pu alors revoir toutes les informations entrées pour le service de connexion avant de retourner à la page principale sur les données de l'entreprise et de publier le tout dans le registre UDDI. J'ai ensuite répété le même processus pour les services Web Account et Report.

Recherche des données

À ce jour (8 octobre 2001), seule une entreprise de Redmond est répertoriée selon la taxinomie GeoWeb : Cold Rooster Consulting. J'ai effectué une autre recherche, cette fois-ci sur la classification ISO 3166. J'ai obtenu le nom de neuf entreprises. Avec d'autres classifications, on obtient d'autres résultats. Avec les autres systèmes de classification, j'obtenais généralement plusieurs pages de résultats.

Les données pouvant maintenant être trouvées, les personnes recherchant des services Web capables de stocker leurs URL favorites devraient théoriquement adopter en masse la solution Cold Rooster. Pour ceux qui travaillent avec Microsoft® Visual Studio® .NET, il sera facile d'utiliser UDDI pour rechercher le service Web et l'ajouter à leur projet.

Lorsque vous entrez pour la première fois dans la boîte de dialogue Add Web Reference (ProjectAdd Web Reference), une boîte de dialogue s'affiche et vous permet de rechercher une référence Web (c'est-à-dire un fichier WSDL) via le serveur Microsoft UDDI. Le point de terminaison utilisé pour Visual Studio est http://uddi.microsoft.com/visualstudio/. Si je dis à ce point de terminaison de rechercher toutes les entreprises commençant par "cold", il ne trouvera que les trois services Web que j'ai enregistré : Account, Logon et Report. Pour ajouter une référence Web au service Web Logon, il me suffit de cliquer sur "Logon" pour étendre le nœud, puis sur "Favorites Web Service: Logon" pour voir le WSDL. Je dois ensuite cliquer sur "Add Reference" et je peux d'ores et déjà me connecter au service Web Favorites.

Si vous avez suivi la démarche jusqu'ici, mais que vous n'avez pas de licence pour Favorites, rendez-vous sur Favorites Service Admin Console Lien non MSDN France Site en anglais et inscrivez-vous. Vous obtiendrez votre mot de passe dans les 15 à 30 minutes. Pour vous connecter au service Web Logon à partir de Visual Basic, le code est simple :

Sub Main()
 Dim svc As New com.coldrooster.www.Logon()
 System.Console.WriteLine(svc.Logon("NomLicencié", "Motdepasse"))
 System.Console.WriteLine("Appuyez sur Retour pour quitter")
 System.Console.ReadLine()
 svc.Dispose()
End Sub

Ce code extrait le jeton GUID utilisé pour accéder aux autres méthodes disponibles pour le service Web Favorites. Pour les autres méthodes, le code est tout aussi facile à écrire.

Résumé

En enregistrant votre entreprise, les tModels personnalisés et les services Web auprès d'UDDI, vous aidez les développeurs du monde entier à trouver vos services Web. Le registre UDDI vous permet d'exposer, outre les points de terminaison de services Web et des informations professionnelles, bien d'autres choses encore. Les personnes qui ont recours à UDDI peuvent aussi utiliser l'interface pour rechercher la documentation et les exemples relatifs à un service Web. L'utilisation du registre Microsoft UDDI est gratuite. Nous vous encourageons à inscrire vos services Web et votre entreprise dans ce registre. Prenez le temps de vous familiariser avec http://uddi.microsoft.com/ Lien non MSDN France Site en anglais. Vous pouvez essayer de rechercher les informations sur Cold Rooster Consulting et de les parcourir pour voir toutes les données disponibles. Enfin, il serait maintenant particulièrement opportun d'utiliser Visual Studio .NET avec le service Favorites et de réaliser vos propres expérimentations.

La prochaine fois, l'invité de cette rubrique sera Allen Wagner. Allen présentera les techniques de gestion des messages SOAP volumineux.



At Your Service

Scott Seely est membre de l'équipe MSDN Architectural Samples. Outre le travail présenté ici, il est l'auteur de deux livres publiés par Prentice Hall : SOAP: Cross Platform Web Service Development Using XML et Windows Shell Programming. Il a écrit et gère une petite bibliothèque SOAP basée C++ (http://www.scottseely.com/soap.htm), publiée sous la licence LGPL.



Dernière mise à jour le mardi 8 janvier 2002



Pour en savoir plus
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft