Académique Documents
Professionnel Documents
Culture Documents
Partie I : Dveloppement dun Web Service Objectif Le but de cette partie est de : - Crer un Web Service avec une mthode de conversion Euro vers Franc - Interroger le Web Service via son interface Web - Ajouter des mthodes au Web service Exercice 1 Cration dun Web service - Dans Visual Studio 20081, crer un nouveau projet de Web Service File > New > Web Site Visual Studio installed templates : choisir ASP.NET Web Service Location: choisir File System Language: choisir Visual C# Pour le nom du projet, il faut choisir : My Documents\Visual Studio 2008\WebSites\Euro2FrancWebService
2008
Cliquer sur OK
Remarque : Vous pouvez choisir dans location : HTTP au lieu de File System .
1
Page 1 sur 17
Afficher le code source du web service et prendre le temps de consulter ce code Tester le Web service en tapant CTRL+F5 Visual Studio a appel Internet Explorer pour y afficher l'URL de votre web service: http://localhost:port/Euro2FrancWebService/Service.asmx
Page 2 sur 17
La page web que vous voyez est automatiquement gnre par le Framework .Net et vous permet de tester votre service Web en utilisant votre navigateur Elle contient la liste des mthodes de votre service web, donc ici uniquement la mthode HelloWorld Remarquez le message vous indiquant que le namespace par dfaut n'a pas t redfini Fermer la page web et revenir au programme pour modifier le namespace (espace de nom XML) de votre service web : Ajouter la ligne d'attribut suivante avant la ligne de dclaration de la classe Service1
[WebService(Namespace = "http://tpwebservices.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Service : System.Web.Services.WebService { public Service () {
Page 3 sur 17
Crer une WebMethod , pour ce faire vous devez remplacer la mthode d'exemple (HelloWorld()) par :
[WebMethod] public double EuroVersFranc(double Euro) { return Euro * 6.55957; } Seul l'attribut [WebMethod] est ncessaire pour faire d'une mthode normale une mthode accessible par votre service web Enregister et compiler Tester la solution (Ctrl+F5)
Page 4 sur 17
En cliquant sur le lien Service Description vous verrez s'afficher le document WSDL correspondant votre service web :
Page 5 sur 17
- Dans la premire page, cliquer sur le lien "EuroVersFranc" : Vous accdez une page web (galement gnre automatiquement par le Framework .NET) qui vous permet d'appeler le web service en donnant ses arguments Vous voyez galement quelles seraient les donnes envoyes au service web suivant trois mthodes possibles : SOAP 1.1, SOAP 1.2, POST Expliquer les messages SOAP affichs.
Page 6 sur 17
Cette page permet de tester directement un web service en utilisant la mthode POST. Celle-ci ne peut fonctionner que pour les services dont les paramtres d'entres sont une liste de types simples (ni tableaux, ni classes). Rentrer un prix en Euro et cliquez sur le bouton Invoquer Le navigateur reoit et affiche telle qu'elle la rponse XML du service web
Page 7 sur 17
Tester l'importance de l'attribut WebMethod ; Mettre en commentaire la ligne dfinissant l'attribut WebMethod sur la mthode FrancVersEuro . Vous avez alors :
Page 8 sur 17
Enlever le commentaire pour que l'on puisse utiliser cette mthode dans la suite des exercices
Page 9 sur 17
2008
Visual Studio installed templates : choisir ASP.NET Web Site Location: choisir File System Language: choisir Visual C# Pour le nom du projet, il faut choisir : My Documents\Visual Studio 2008\WebSites\Webform1 Cliquer sur OK Appuyer sur le bouton design pour passer en mode graphique. Ajouter 2 TextBox, 2 Labels et 2 Boutons sur la page :
Page 10 sur 17
Ajouter maintenant une rfrence vers le Web Service cr dans la partie prcdente. Pour cela, dans lexplorateur de solutions, cliquer droit sur lapplication conversion et slectionnez Add Web Reference
Page 11 sur 17
Cliquer sur Add Reference Visual Studio .NET ajoute un rpertoire App_WebReferences la solution. Ce rpertoire contient la classe proxy qui va vous permettre dutiliser le Web Service comme un objet local.
Double-cliquer sur le bouton Button1 et ajouter le code suivant pour appeler la mthode FrancVersEuro du Service Web juste ajout au projet :
Page 13 sur 17
private void Button2_Click(object sender, System.EventArgs e) { double Francs; ConversionFrancEuro.Service myWebService = new ConversionFrancEuro.Service(); Francs = myWebService.EuroVersFranc(Double.Parse(TextBox2.Text)); Label2.Text = Francs.ToString(); } Compiler et tester la page ASPX Tester les appels au Service Web
Page 14 sur 17
Le processus de prcompilation dtecte toutes les erreurs de compilation et identifie les erreurs dans le fichier de configuration. La vitesse de rponse initiale pour les pages est plus rapide, car ces dernires sont dj compiles. Si vous copiez des pages vers un site au lieu de les compiler d'abord, les pages sont compiles lors de la premire demande et leur sortie compile est mise en cache.
Aucun code de programme n'est dploy avec le site, pour garantir la scurit de vos fichiers. Vous pouvez publier le site avec une protection du balisage, ce qui entrane la compilation des fichiers .aspx, ou sans protection du balisage, ce qui entrane la copie des fichiers .aspx en l'tat vers le site et vous permet de modifier leur disposition aprs le dploiement.
Travail effectuer Ouvrir le navigateur Internet Explorer et contacter le web service ladresse : http://localhost/Euro2FrancWebService/Service.asmx Dans la suite, on va publier le service web : L'assistant de publication de site WEB est accessible depuis le menu : Build > Publish WEB site
Page 15 sur 17
En appuyant sur le bouton , un nouvel assistant est lanc, il nous demande le site de destination qui peut tre : Le systme de fichier (local ou partage rseau) Le serveur IIS local Un site FTP Un site distant (via les extensions FrontPage)
Nous choisissons Local IIS et nous appuyons sur Create New Web Application .
Page 16 sur 17
Pour examiner la sortie de la commande Publier le site Web 1. Dans l'Explorateur Windows, accdez au dossier : C:\Inetpub\wwwroot\Euro2Franc . Vrifier lexistence du fichier service.asmx. 2. Accdez au dossier Bin. Le dossier contient deux types de fichiers :
o o
des fichiers .compiled qui correspondent aux pages ; des fichiers .dll qui contiennent le code excutable pour le Web Service, tel que le fichier de classe que vous avez cr.
Rappelez-vous que la page, son code et le fichier de classe spar que vous aviez cr ont tous t compil dans du code excutable. Consulter le contenu de ce rpertoire. Vrifier que le web service a t publi en ouvrant la page ladresse: http://localhost/Euro2Franc/Service.asmx
Page 17 sur 17