Tutoriel XML

ACCUEIL XML Introduction XML XML Comment utiliser Arbre XML Syntaxe XML Éléments XML Attributs XML Espaces de noms XML Affichage XML Requête HTTP XML Analyseur XML DOM XML XPath XML XML XSLT XQuery XML XMLXLink Validateur XML DTD XML Schéma XML Serveur XML Exemples XML XML Quiz Certificat XML

XMLAJAX

Présentation d'AJAX AJAX XMLHttp Requête AJAX Réponse AJAX Fichier XML AJAX PHP AJAX ASP AJAX Base de données AJAX Applications AJAX Exemples AJAX

DOM XML

Présentation du DOM Nœuds DOM Accès au DOM Informations sur le nœud DOM Liste des nœuds DOM Traversée du DOM Navigation DOM DOM Obtenir des valeurs Nœuds de changement DOM DOM Supprimer les nœuds DOM Remplacer les nœuds DOM Créer des nœuds DOM Ajouter des nœuds Nœuds de clonage DOM Exemples DOM

Tutoriel XPath

Présentation de XPath Nœuds XPath Syntaxe XPath Axes XPath Opérateurs XPath Exemples XPath

Tutoriel XSLT

Présentation de XSLT Langages XSL Transformation XSLT XSLT <modèle> XSLT <valeur-de> XSLT <pour-chaque> XSLT <sort> XSLT <si> XSLT <choisir> Appliquer XSLT XSLT sur le client XSLT sur le serveur XSLT Éditer XML Exemples XSLT

Tutoriel XQuery

Présentation de XQuery Exemple XQuery XQuery FLWOR XQuery HTML Termes XQuery Syntaxe XQuery Ajouter XQuery Sélection XQuery Fonctions XQuery

DTD XML

Présentation de la DTD Blocs de construction DTD Éléments DTD Attributs DTD Éléments DTD vs Attr Entités DTD Exemples de DTD

Schéma XSD

Présentation XSD Comment XSD XSD <schéma> Éléments XSD Attributs XSD Restrictions XSD

Complexe XSD

Éléments XSD XSD vide Éléments XSD uniquement Texte XSD uniquement XSD Mixte Indicateurs XSD XSD <tout> XSD <anyAttribute> Remplacement XSD Exemple XSD

Données XSD

Chaîne XSD Date XSD Numérique XSD Divers XSD Référence XSD

Services Web

Services XML XMLWSDL SAVON XML XML RDF XML RSS

Les références

Types de nœuds DOM Nœud DOM Liste de nœuds DOM DOM NamedNodeMap Documents DOM Élément DOM Attribut DOM Texte DOM DOM CDATA DOM Comment DOM XMLHttpRequest Analyseur DOM Éléments XSLT Fonctions XSLT/XPath

Services Web XML


Les services Web sont des composants d'application Web.

Les services Web peuvent être publiés, trouvés et utilisés sur le Web.

Ce didacticiel présente WSDL, SOAP, RDF et RSS.


WSDLName

  • WSDL signifie Web Services Description Language
  • WSDL est un langage basé sur XML pour décrire les services Web.
  • WSDL est une recommandation du W3C

SAVON

  • SOAP signifie Simple Object Access Protocol
  • SOAP est un protocole basé sur XML pour accéder aux services Web.
  • SOAP est basé sur XML
  • SOAP est une recommandation du W3C

RDF

  • RDF signifie Ressource Description Framework
  • RDF est un framework pour décrire des ressources sur le web
  • RDF est écrit en XML
  • RDF est une recommandation du W3C

RSS

  • RSS signifie Really Simple Syndication
  • RSS vous permet de syndiquer le contenu de votre site
  • RSS définit un moyen simple de partager et d'afficher les titres et le contenu
  • Les fichiers RSS peuvent être automatiquement mis à jour
  • RSS permet des vues personnalisées pour différents sites
  • RSS est écrit en XML

Ce que vous devez déjà savoir

Avant d'étudier les services Web, vous devez avoir une compréhension de base de XML et des espaces de noms XML.

Si vous souhaitez d'abord étudier ces sujets, veuillez lire notre Tutoriel XML .



Services Web

  • Les services Web sont des composants d'application
  • Les services Web communiquent à l'aide de protocoles ouverts
  • Les services Web sont autonomes et auto-descriptifs
  • Les services Web peuvent être découverts à l'aide d'UDDI
  • Les services Web peuvent être utilisés par d'autres applications
  • HTTP et XML sont la base des services Web

L'interopérabilité a la plus haute priorité

Lorsque toutes les principales plates-formes pouvaient accéder au Web à l'aide de navigateurs Web, les différentes plates-formes ne pouvaient pas interagir. Pour que ces plateformes fonctionnent ensemble, des applications Web ont été développées.

Les applications Web sont simplement des applications qui s'exécutent sur le Web. Ceux-ci sont construits autour des normes du navigateur Web et peuvent être utilisés par n'importe quel navigateur sur n'importe quelle plate-forme.


Les services Web font passer les applications Web au niveau supérieur

En utilisant les services Web, votre application peut publier sa fonction ou son message au reste du monde.

Les services Web utilisent XML pour coder et décoder les données, et SOAP pour les transporter (en utilisant des protocoles ouverts).

Avec les services Web, le système de facturation du serveur Win 2k de votre service comptable peut se connecter au serveur UNIX de votre fournisseur informatique.


Les services Web ont deux types d'utilisations

Composants d'application réutilisables.

Il y a des choses dont les applications ont très souvent besoin. Alors pourquoi les refaire encore et encore ?

Les services Web peuvent proposer des composants d'application tels que : la conversion de devises, les bulletins météorologiques ou même la traduction de langues en tant que services.

Connectez le logiciel existant.

Les services Web peuvent aider à résoudre le problème d'interopérabilité en donnant à différentes applications un moyen de lier leurs données.

Avec les services Web, vous pouvez échanger des données entre différentes applications et différentes plates-formes.

Toute application peut avoir un composant Web Service.

Les services Web peuvent être créés quel que soit le langage de programmation.


Un exemple de service Web

Dans l'exemple suivant, nous utiliserons ASP.NET pour créer un service Web simple qui convertit la température de Fahrenheit en Celsius, et vice versa :

<%@ WebService Language="VBScript" Class="TempConvert" %>

Imports System
Imports System.Web.Services

Public Class TempConvert :Inherits WebService

<WebMethod()> Public Function FahrenheitToCelsius(ByVal Fahrenheit As String) As String
  dim fahr
  fahr=trim(replace(Fahrenheit,",","."))
  if fahr="" or IsNumeric(fahr)=false then return "Error"
  return ((((fahr) - 32) / 9) * 5)
end function

<WebMethod()> Public Function CelsiusToFahrenheit(ByVal Celsius As String) As String
  dim cel
  cel=trim(replace(Celsius,",","."))
  if cel="" or IsNumeric(cel)=false then return "Error"
  return ((((cel) * 9) / 5) + 32)
end function

end class

Ce document est enregistré en tant que fichier .asmx. Il s'agit de l'extension de fichier ASP.NET pour les services Web XML.


Exemple expliqué

Remarque : Pour exécuter cet exemple, vous aurez besoin d'un serveur .NET.

La première ligne de l'exemple indique qu'il s'agit d'un service Web, écrit en VBScript, et porte le nom de classe "TempConvert":

<%@ WebService Language="VBScript" Class="TempConvert" %>

Les lignes suivantes importent l'espace de noms "System.Web.Services" du framework .NET :

Imports System
Imports System.Web.Services

La ligne suivante définit que la classe "TempConvert" est un type de classe WebService :

Public Class TempConvert :Inherits WebService

Les prochaines étapes sont la programmation VB de base. Cette application a deux fonctions. Un pour convertir de Fahrenheit en Celsius, et un pour convertir de Celsius en Fahrenheit.

La seule différence avec une application normale est que cette fonction est définie comme une "WebMethod()".

Utilisez "WebMethod()" pour convertir les fonctions de votre application en services Web :

<WebMethod()> Public Function FahrenheitToCelsius(ByVal Fahrenheit As String) As String
  dim fahr
  fahr=trim(replace(Fahrenheit,",","."))
  if fahr="" or IsNumeric(fahr)=false then return "Error"
  return ((((fahr) - 32) / 9) * 5)
end function

<WebMethod()> Public Function CelsiusToFahrenheit(ByVal Celsius As String) As String
  dim cel
  cel=trim(replace(Celsius,",","."))
  if cel="" or IsNumeric(cel)=false then return "Error"
  return ((((cel) * 9) / 5) + 32)
end function

Ensuite, terminez le cours :

end class

Publiez le fichier .asmx sur un serveur prenant en charge .NET et vous disposerez de votre premier service Web fonctionnel.


Mettez le service Web sur votre site Web

A l'aide d'un formulaire et de la méthode HTTP POST, vous pouvez mettre le service web sur votre site, comme ceci :

Fahrenheit à Celsius :

Celsius à Fahrenheit :

Comment faire

Voici le code pour ajouter le Web Service à une page Web :

<form action='tempconvert.asmx/FahrenheitToCelsius'
method="post" target="_blank">
<table>
  <tr>
    <td>Fahrenheit to Celsius:</td>
    <td>
    <input class="frmInput" type="text" size="30" name="Fahrenheit">
    </td>
  </tr>
  <tr>
    <td></td>
    <td align="right">
     <input type="submit" value="Submit" class="button">
     </td>
  </tr>
</table>
</form>

<form action='tempconvert.asmx/CelsiusToFahrenheit'
method="post" target="_blank">
<table>
  <tr>
    <td>Celsius to Fahrenheit:</td>
    <td>
    <input class="frmInput" type="text" size="30" name="Celsius">
    </td>
  </tr>
  <tr>
    <td></td>
    <td align="right">
    <input type="submit" value="Submit" class="button">
    </td>
  </tr>
</table>
</form>

Remplacez le "tempconvert.asmx" par l'adresse de votre service Web comme :

http://www.example.com/xml/tempconvert.asmx