4D v14.3Publier un Service Web avec 4D |
||
|
4D v14.3
Publier un Service Web avec 4D
Publier un Service Web avec 4D
La publication d’un Service Web dans 4D s’effectue généralement en trois étapes :
Des étapes de personnalisation supplémentaires peuvent être définies, mais elles ne sont pas obligatoires. Vous pouvez créer tout type de méthode projet destinée à une publication en tant que Web Service. La méthode doit accepter des paramètres et retourner un résultat. Ces paramètres doivent impérativement être déclarés explicitement dans l’en-tête de la méthode à l’aide des commandes du thème Compilateur. 4D formate par défaut les paramètres nécessaires au fonctionnement des méthodes publiées en tant que Services Web. Vous pouvez toutefois modifier ces paramètres à l’aide de la commande SOAP DECLARATION. 4D se charge de décoder et d’encoder automatiquement les données reçues et envoyées via SOAP. Attention : Les noms des méthodes sont utilisés comme balises XML dans les requêtes SOAP. Conformément à la norme XML, ces noms ne doivent pas débuter par un chiffre ni contenir d’espaces. En outre, pour éviter tout risque d’incompatibilité, il est recommandé de ne pas utiliser de caractères étendus (tels que des caractères accentués). Pour définir et contrôler le déroulement d’une méthode publiée en tant que Web Service, vous devez utiliser les commandes du thème “Web Services”— reportez-vous à la section Web Services (Serveur) dans le manuel Langage de 4D. Pour pouvoir publier une ou plusieurs méthode(s) de votre base comme Web Service(s), les conditions suivantes doivent être réunies.
Des icônes spécifiques distinguent, dans la Page Méthodes de l’Explorateur de 4D, les méthodes offertes comme Web Services et celles publiées dans le fichier WSDL . Le WSDL décrit en langage XML la syntaxe et les informations nécessaires à l’appel de la méthode 4D (Nom de la méthode, URL, paramètres, etc.). Dans 4D, le WSDL correspond à un seul Service Web. Il décrit les méthodes et leurs paramètres et peut être consulté à un emplacement spécifique. Dans 4D, le WSDL n’est pas un véritable “fichier” (il n’existe qu’en mémoire et n’est pas écrit sur disque) ; c’est un URL nommé 4DWSDL pour les Services Web publiés en mode RPC ou 4DWSDL/DOC pour les Services Web publiés en mode DOC. Il est toujours situé à la racine du serveur Web. Si l’adresse de votre serveur Web est http://www.monserveur.com, vous pourrez consulter le WSDL à l’URL suivant :
Pour ajouter ou supprimer une méthode dans le WSDL, il suffit de cocher ou désélectionner l’option correspondante dans les propriétés de la méthode. 4D met à jour instantanément le contenu du WSDL. Note : L'icône distingue, dans l’Explorateur de 4D, les méthodes publiées dans le WSDL. Lorsque les requêtes Web Services sont autorisées, 4D génère automatiquement et dynamiquement le WSDL du serveur 4D Web si au moins une méthode dispose de l’option Publié dans WSDL dans la fenêtre des Propriétés de la méthode. Par défaut, cette option n’est pas cochée. Chaque Service Web publié sur Internet comporte un nom. Ce nom permet de différencier les services au niveau du serveur SOAP (lorsque le serveur publie plusieurs Web Services), ainsi que dans les annuaires de Services Web. Par défaut, 4D utilise le nom A_WebService. Ce paramètre peut être modifié dans la page “Web Services” du thème Web des Propriétés de la base. Attention : Conformément à la norme XML concernant les noms de balises, la chaîne de caractères utilisée ne doit pas débuter par un chiffre ni contenir d’espaces. En outre, pour éviter tout risque d’incompatibilité, il est recommandé de ne pas utiliser de caractères étendus (tels que des caractères accentués). Chaque Service Web publié sur Internet doit être unique. L’unicité des noms de Web Services est assuré à l’aide des espaces de nommage XML (XML namespace). Un espace de nommage est une chaîne de caractères arbitraire permettant d’identifier de manière unique un ensemble de balises XML. Typiquement, l’espace de nommage débute par l’URL de la société (http://masociete.com/monespacedenommage). Dans ce cas, il n’est pas indispensable qu’il y ait quelque chose à l’URL défini, il importe simplement que la chaîne de caractères utilisée soit unique. Par défaut, 4D utilise l’espace de nommage suivant : http://www.4d.com/namespace/default. Ce paramètre peut être modifié dans la page "Web Services" du thème Web des Propriétés de la base. Les commentaires éventuellement associés aux méthodes offertes en tant que Web Services et publiées dans le WSDL apparaissent automatiquement dans ce fichier en tant que champ “documentation”. Ces commentaires doivent être saisis dans la de la Page Méthodes de l'Explorateur (cf. section Utiliser les commentaires). Ce mécanisme permet de décrire ou de documenter les méthodes publiées. L’interprétation et la prise en charge de ce champ dépend de l’implémentation du client Web Service. Une fois que votre Service Web est publié par 4D, toute application cliente de Web Service peut s’y connecter. Le mode d’accès au serveur et le traitement des informations échangées sont spécifiques à chaque type d’application cliente utilisée. Toutes les informations nécessaires à l’emploi du Service Web (telles que l’URL du service, les paramètres à utiliser, etc.) sont publiées dans le WSDL de 4D. En principe, l’utilisation d’un Web Service débute donc par la lecture du WSDL du serveur SOAP afin de récupérer ces informations. Dans 4D, l’URL du WSDL est http://AdresseServeur/4DWSDL (mode RPC) ou http://AdresseServeur/4DWSDL/DOC (mode DOC). Cette étape n’est toutefois pas obligatoire. La connexion au serveur SOAP peut être effectuée directement. Voici la liste des valeurs nécessaires à l’établissement des requêtes SOAP ainsi que leur mode de définition :
|
PROPRIÉTÉS
Produit : 4D UTILISATION DE L'ARTICLE
4D - Mode Développement ( 4D v14 R2) Parent de : Publier un Service Web avec 4D ( 4D v12.4) |