Description et découverte du service web à l’aide d’UDDI, partie II

 

Scott Seely
Microsoft Corporation

17 octobre 2001

Introduction

Dans notre colonne précédente, nous avons eu une visite de Karsten Januszewski de l’équipe Microsoft® UDDI. Karsten a donné une vue d’ensemble de ce qu’est l’UDDI, pourquoi il existe et comment l’utiliser. Dans cet article, nous allons montrer ce que nous avons dû faire pour inscrire le service Cold Rooster Favoris auprès du registre Microsoft UDDI. Comme nous ne nous sommes jamais inscrits auprès de l’UDDI auparavant, nous avons dû commencer au tout début.

S’inscrire auprès de l’UDDI

Nous n’avions jamais enregistré Cold Rooster auprès du site Microsoft UDDI, donc notre première commande a été de créer un compte sur ce site. L’inscription de compte nécessite que vous vous connectiez à l’aide de Passport. Une fois connecté, vous avez la possibilité de définir l’adresse e-mail du contact UDDI sur celle liée à votre compte Passport ou à autre chose. J’ai choisi de lier cela à l’adresse crooster@microsoft.com , car je ne serais pas la seule personne utilisant UDDI dans mon équipe. Nous avions déjà créé ce compte de messagerie pour d’autres besoins de messagerie pour Cold Rooster Consulting, donc cela semblait le choix logique.

L’écran d’inscription demande également d’autres informations de contact, telles que le nom de l’inscrit, un numéro de téléphone de contact et une adresse postale. Pour terminer l’inscription, vous devez accepter un contrat de conditions d’utilisation (voir Conditions d’utilisation).

Une fois que vous avez vos coordonnées dans le registre et que vous avez accepté les conditions d’utilisation, le site UDDI vous enverra un e-mail afin que l’adresse de contact puisse être confirmée. Cliquez sur le lien dans ce message pour pouvoir administrer votre compte UDDI. L’administration implique l’ajout de données métier au registre, la publication de tModels et la modification des détails de l’inscription. La figure 1 montre la page d’administration.

Figure 1. Page d’administration UDDI

Ajouter votre entreprise à UDDI

Après avoir établi notre compte sur le site Microsoft UDDI, la tâche suivante a été d’ajouter Cold Rooster Consulting au registre UDDI. Nous pouvons inscrire notre entreprise via la page Web ou via l’API UDDI à l’aide du Kit de développement logiciel (SDK) .NET ou du Kit de développement logiciel (SDK) COM. J’ai choisi d’utiliser l’interface utilisateur, car j’avais l’intention de tout inscrire une seule fois. Si nous prenions un jour l’habitude de modifier régulièrement des bits de l’interface, nous automatiserions ce processus pour réduire le risque d’erreurs. L’ajout de l’entreprise au registre permet aux utilisateurs de nous trouver en fonction de ce que nous faisons et des types de services Web que nous fournissons. Pour ajouter Cold Rooster Consulting au registre UDDI, nous avons consulté le lien « Ajouter une nouvelle entreprise » sur la page d’administration (Figure 1). La première page demande le nom et la description de l’entreprise. Pour Cold Rooster, j’ai entré:

Nom: Cold Rooster Consulting

Description : Société fictive utilisée par l’équipe d’exemples architecturaux MSDN

Une fois l’entreprise ajoutée au registre UDDI, je pourrais maintenant ajouter plus d’informations :

  • Contacts : Personnes à contacter qui peut aider avec tout ce qui est fourni par l’entreprise. Nous avons ajouté différents membres de l’équipe d’exemples d’architecture MSDN à la liste des contacts.
  • Services: TModels (fichiers WSDL) que cette société expose. Nous avons ajouté les modèles Compte, Ouverture de session et Rapport à notre entrée UDDI.
  • Identificateurs: Éléments de données propres à cette entreprise, tels qu’un numéro d’inscription au registre d’entreprise. Étant donné que Le Coq froid n’a pas l’un de ces, nous n’avons pas rempli cela.
  • Classifications d’entreprise : Ceux-ci identifient l’emplacement de l’entreprise, ainsi que ce que fait l’entreprise. Cold Rooster Consulting est situé dans l’État de Washington dans le États-Unis.
  • URL de découverte : Cela fournit un emplacement où des détails sur l’entreprise peuvent être trouvés.

Nous allons d’abord faire les éléments les plus simples et enregistrer les services pour le dernier.

Ajout de contacts à UDDI

C’est assez simple. Comme tout autre formulaire d’adresse, il vous suffit de renseigner les détails généraux des différents contacts. En fonction de la description et des notes d’utilisation, les utilisateurs potentiels se réfèrent à ces informations pour contacter votre entreprise afin d’obtenir une licence pour le service Web, obtenir du support ou vous contacter à propos d’autres éléments liés à l’entreprise. La figure 2 montre comment le formulaire recherche mes informations de contact.

Figure 2 : Page des détails du contact

Classification de l’entreprise

La plupart des entreprises peuvent être classées selon ce qu’elles font. Lors de la classification d’entités, un certain nombre de taxonomies sont disponibles pour la classification UDDI. Vous pouvez utiliser :

  • Système de classification des industries de l’Amérique du Nord (NAICS-1997)
  • Codes de produits et services standard universels (UNSPSC-7.03)
  • Taxonomie géographique ISO 3166
  • Classification industrielle standard (SIC-1987)
  • GeoWeb Geographic Classification
  • Taxonomie des types UDDI
  • Nous avons inscrit Cold Rooster sous toutes ces taxonomies à l’exception des types UDDI. Nous n’avons pas inscrit l’entreprise sous la taxonomie des types UDDI, car cette taxonomie particulière existe pour classifier les informations tModel et de service.
  • Pour savoir ce que nous voulons inscrire, nous devons examiner ce que fait Cold Rooster et où il se trouve. Cold Rooster Consulting est basé à Redmond, Washington, États-Unis. Il fournit des services de conseil en informatique fondés sur des projets et complémentaires. En outre, il est spécialisé dans le développement Windows et Internet. Sachant tout cela, nous devions classer l’entreprise de manière appropriée dans chacun des six schémas de classification. Le tableau 1 montre comment nous avons classé l’entreprise pour chaque schéma.
    Schéma de classification classification ;
    SCIAN
    • 541511 : Services de programmation d’ordinateurs personnalisés
    • 541512 : Services de conception de systèmes informatiques
    UNSPSC
    • 81.11.16.07.00 : Programmation pour C ou C++
    • 81.11.16.03.00 : Programmation pour HTML
    • 81.11.16.01.00 : Programmation pour Microsoft® Visual Basic®
    • 81.11.16.12.00 : Programmation ou langages propriétaires (nous faisons aussi C#)
    • 81.11.21.06.00 : Fournisseurs de services d’application (nous hébergeons des services web)
    • 81.11.21.03.00 : Services de conception de sites World Wide Web (WWW)
    ISO 3166
    • US-WA (Washington, Usa, Monde)
    SIC
    • 7371 : Services de programmation informatique
    • 7372 : Services de récupération d’informations
    GeoWeb Geographic Classification
    • 518816 (Redmond, Washington, Usa, Amérique du Nord, Monde)

Tableau 1. Exemples de classifications UDDI

Notre entreprise est maintenant entièrement classée. L’étape suivante consiste à ajouter les trois tModels.

Ajout de tModels

Juste au cas où vous avez manqué l’article de la semaine dernière, un tModel est un modèle de type. Pour les services web, les tModels sont généralement synonymes de fichiers WSDL. Par conséquent, ils définissent les types utilisés par le service Web, ainsi que les définitions de message et d’opération pour le service Web. Avec un tModel, je sais quelles opérations de service web sont implémentées par une entité qui implémente ce tModel, et comment accéder à ces opérations. Vous inscrivez vos fichiers WSDL en tant que tModels, car il peut éventuellement y avoir plusieurs implémentations de ces tModels.

Le service Web Favoris côté serveur est composé de trois services web : ouverture de session, compte et rapport. Le service web d’ouverture de session permet à un titulaire de licence de se connecter et d’obtenir un jeton. À l’aide de ce jeton, le titulaire de licence peut accéder aux autres méthodes dans les services Web De compte et de rapport. Pour ajouter les fichiers WSDL, vous devez les déployer sur un serveur accessible via l’Internet public. C’est également là que vous utilisez la classification UDDI.

Pour ajouter un tModel, cliquez simplement sur « Ajouter un nouveau tModel » dans la page d’administration (Figure 1). Vous devez ensuite ajouter des informations de base pour le tModel : son nom, une description et où localiser le document WSDL. Une fois cette opération terminée, vous classifiez le tModel en tant que document WSDL et publiez les informations dans le registre UDDI. Tout est assez simple. La figure 3 montre les détails renseignés pour le tModel d’ouverture de session.

Figure 3. Détails du modèle d’ouverture de session

Dans l’écran suivant, vous pouvez ajouter des classifications de service et des identificateurs d’entreprise. Il s’agit des mêmes données que celles que vous pouvez entrer pour les informations commerciales. En tant que classification de service, nous avons utilisé uniquement la classification UDDI. Vous allez cliquer sur une série de liens pour spécifier ces informations :

  • Ces types sont utilisés pour les tModels
  • Spécification d’un service web
  • Spécification d’un service web décrit dans WSDL
  • Lors de l’inscription du service Cold Rooster Favorites, j’ai suivi ces étapes pour Logon.WSDL, Account.WSDL et Report.WSDL. L’inscription UDDI a ensuite été effectuée et les informations disponibles dans le registre.

Définition des services

Une fois les tModels en place, vous devez toujours ajouter les services pour déclarer que ces services existent. Pour ce faire, revenez à la page d’administration et, cette fois, vous verrez votre entreprise répertoriée sous « Ajouter une nouvelle entreprise » (Figure 1). Sélectionnez votre entreprise et faites défiler jusqu’à « Services ». Ici, cliquez sur « Ajouter un service ». Sur la première page, vous allez renseigner les détails du service. Pour le service web d’ouverture de session, j’ai renseigné les éléments suivants :

  • Nom : Ouverture de session
  • Description : valide le titulaire de licence et fournit un jeton d’accès

Une fois cette opération effectuée, j’ai de nouveau classé le service en tant que « Spécification pour un service web décrit dans WSDL ». J’ai ensuite lié le service au tModel de connexion qui était déjà inscrit. Dans « Définir une nouvelle liaison », j’ai renseigné les champs comme indiqué ci-dessous :

Pour terminer, j’ai dû associer le service au service web Favoris : Logon tModel. Sous Signatures de spécification, sélectionnez « Ajouter une signature de spécification ». Pour rechercher le modèle par son nom, entrez « Service web favoris ». Cela génère les trois tModels enregistrés pour le service Favoris. Sélectionnez « Service web favoris : ouverture de session », puis appuyez sur « Continuer ». Une page web s’affiche ensuite sur laquelle vous devez modifier des informations supplémentaires sur le point de terminaison. J’ai renseigné ces champs comme suit :

Une fois cette valeur remplie, j’ai de nouveau cliqué sur « Continuer ». Je pouvais ensuite passer en revue toutes les informations entrées sur le service d’ouverture de session avant de revenir à la vue main Business des données et de tout publier dans le registre UDDI. J’ai ensuite répété ce processus pour les services Web de compte et de rapport.

Recherche des données

Aujourd’hui (8 octobre 2001) une seule société est cotée à Redmond selon la taxonomie GeoWeb: Cold Rooster Consulting. J’ai effectué une autre recherche, cette fois par classification ISO 3166. Cette fois, neuf sociétés ont fait leur apparition. D’autres classifications ont fait apparaître d’autres totaux. Pour les autres schémas de classification, j’ai généralement fini avec plusieurs pages de résultats.

Étant donné que les données sont désormais détectables, les personnes intéressées par les services web qui stockent les URL favorites vont théoriquement affluer vers la solution Cold Rooster pour les utiliser. Pour ceux qui utilisent Microsoft® Visual Studio® .NET, l’utilisation d’UDDI pour rechercher le service web et l’ajouter à leur projet sera simple.

Lorsque vous accédez pour la première fois à la boîte de dialogue Ajouter une référence web (ProjectAjouter une référence web), une boîte de dialogue vous permet de rechercher une référence web (également appelée fichier WSDL) via le serveur Microsoft UDDI. Le point de terminaison utilisé pour Visual Studio est http://uddi.microsoft.com/visualstudio/. Lorsque je dis à ce point de terminaison de rechercher toutes les entreprises commençant par « à froid », il trouve uniquement les trois services web que j’ai inscrits : Compte, Ouverture de session et Rapport. Pour ajouter une référence web au service web d’ouverture de session, je clique simplement sur « Ouverture de session » pour développer le nœud, puis sur « Service web favoris : Ouverture de session » pour afficher le WSDL. À ce stade, je clique sur « Ajouter une référence » et je suis prêt à me connecter au service Web Favoris.

Si vous avez suivi jusqu’à ce stade, mais que vous n’avez pas de licence Favoris, accédez simplement à la console Administration du service Favoris et inscrivez-vous à une licence. Vous devriez recevoir votre mot de passe dans un délai de 15 à 30 minutes. Pour vous connecter au service web d’ouverture de session à l’aide de Visual Basic, le code est simple :

Sub Main()
    Dim svc As New com.coldrooster.www.Logon()
    System.Console.WriteLine(svc.Logon("LicenseeName", "Password"))
    System.Console.WriteLine("Press return to exit")
    System.Console.ReadLine()
    svc.Dispose()
End Sub

Ce code imprime le jeton GUID utilisé pour accéder aux autres méthodes disponibles pour le service Web Favoris. Le code de l’une des autres méthodes sera également facile à écrire.

Résumé

En inscrivant votre entreprise, vos tModels personnalisés et vos 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 bien plus que les points de terminaison de service web et les données métier. Les personnes qui utilisent UDDI peuvent également utiliser l’interface pour rechercher des exemples et de la documentation du 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. Vous pouvez essayer de trouver les informations de Cold Rooster Consulting et de les parcourir pour voir toutes les informations disponibles. Enfin, ce serait le moment idéal d’utiliser Visual Studio .NET pour s’attacher au service Favoris et effectuer vos propres expériences.

La prochaine fois, nous aurons une chronique d’invité d’Allen Wagner. Allen discutera des techniques de gestion des messages SOAP volumineux.

 

À votre service

Scott Seely est membre de l’équipe d’exemples architecturaux MSDN. Outre son travail, il a publié deux livres dans 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 sur C++ (http://www.scottseely.com/soap.htm), publiée sous le LGPL.