Institut numerique

4.2 Technologies et outils de développement

4.2.1 Le langage JAVA

La plateforme Java (the Java Platform en anglais) est une plateforme produite par Sun Microsystems permettant de développer et d’exécuter des programmes écrits en langage Java indépendante de tout processeur et de tout système d’exploitation. La plateforme se compose principalement d’un moteur d’exécution (appelé une machine virtuelle) et d’un compilateur fourni avec un ensemble de bibliothèques standards dont il existe plusieurs implémentations pour divers matériels et systèmes d’exploitations, de façon à ce que les programmes Java puissent s’exécuter de façon identique sur chacun d’entre eux.

Dans le domaine des applications d’entreprises (services web), Java fut le premier à proposer une solution (J2EE). La plateforme proposée est en fait un ensemble de technologies ou spécifications Java regroupées sous une seule bannière. Microsoft arriva dans un deuxième temps. Il proposa un framework (.NET) qui est une re-architecture de différentes technologies Microsoft. Dans la situation actuelle les deux technologies sont en concurrence directe dans plusieurs domaines, celui du web principalement. Cependant, les services web peuvent aussi être implémentés en php.

Dans le cadre de notre travail, nous avons utilisé la plateforme Eclipse Helios Release 3.2 pour l’implémentation du service et la génération des stubs et Netbeans IDE (1) version 6.9.1 pour l’implémentation du client en utilisant JDK 1.5.018 et JRE 6.O6. Le langage Java a été choisi pour plusieurs raisons :

– Java est un langage orienté objet simple ce qui réduit les risques d’incohérence,
– Java est portable et multi – plateformes,
– Java possède une riche bibliothèque de classes.

4.2.2 Le langage XML

Pour que des applications distantes puissent communiquer, il faut un langage commun, et XML est bien sûr un candidat idéal grâce à sa puissance et son extensibilité comme vue précédemment dans le chapitre premier. Il faut aussi noter que XML constitue une forme de ” colle ” qui permet la communication entre les différentes applications écrites dans des différents langages de programmation et c’est à elle que les standards comme UDDI, SOAP et WSDL (pour ne citer que ceux-là) sont nés.

Dans le cadre de notre travail, nous avons utilisé ce langage premièrement pour la description du service à mettre en place (WSDL), ensuite pour la génération des stubs (skeleton) du service et client web et en n tous les messages échangés dans les systèmes sont sous format XML.

4.2.3 Les technologies JSP et Servlet

Les pages JSP sont composées du code HTML statique et du code écrit en Java pour les parties dynamiques de la page. Nous avons opté pour les technologies JSP et Servlets pour les raisons suivantes :

– Comme il s’agit d’une technologie basée sur Java, JSP pro te de tout ce qu’o re ce langage pour le développement et le déploiement d’applications,
– Grâce aux API normalisées pour les JSP et à la portabilité du code compilé Java, on n’est pas limité à un seul type de plateforme ni de serveur web utilisé,
– JSP n’est pas rattaché à un éditeur particulier,
– Les Servlets sont indépendantes du serveur web,
– Les Servlets s’exécutent dans un moteur de Servlet utilisé pour établir le lien entre la Servlet et le serveur web. Ainsi le programmeur n’a pas à se soucier de détails techniques tels que la connexion au réseau et la mise en forme de la réponse HTTP,
– Les Servlets ont la capacité de supporter le multi – tâches.

4.2.4 Le serveur Apache Tomcat

Le serveur d’application Apache Tomcat (version utilisée 6.32) joue le rôle de conteneur JSP/Servlet qui permet à sa connexion avec un serveur web de délivrer du contenu dynamique aux clients. Tomcat est souvent utilisé en association avec un autre serveur web, en général Apache. Apache s’occupe de toutes les pages web traditionnelles, et Tomcat uniquement des pages d’une application web Java. On peut le télécharger sur le lien suivant : http ://tomcat.apache.org/download-60.cgi. Les raisons ayant motivées ce choix sont :

– Apache Tomcat est un logiciel Open Source,
– Apache Tomcat permet l’implémentation rapide des dernières spécifications des JSP/Servlet,
– Apache Tomcat est connu pour ses larges utilisations dans la communauté JAVA/J2EE, il est ouvert et portable,
– Apache Tomcat est considéré comme stable et sécurisé.

4.2.5 La plateforme web service Axis

Pour la plateforme de web services, nous avons utilisé Axis (la version 1.4) proposé par la fondation Apache qui est une implémentation du protocole SOAP pour Java. Axis permet d’implémenter de manière transparente des web services écris en java au sein du serveur d’application J2EE Apache Tomcat et de les déployer. Il en résulte une plateforme web hybride supportant à la fois des requêtes HTTP et des requêtes SOAP. On peut le télécharger sur le lien suivant : http ://ws.apache.org/axis/.

La plateforme se veut donc à la fois un serveur web délivrant des pages HTML dynamiquement au moyen de Servlets et de JSP et une plateforme d’hébergement de web services.

Pour mettre en communication les serveurs Tomcat et Axis, il faut aussi intégrer un ensemble de bibliothèques telles que mail.jar, activation.jar, mysql-connector.jar, tools.jar, wsdl4j.jar ect.

1 IDE : Integrated Development Environment, un environnement de développement intégré, est un programme regroupant un éditeur de texte, un compilateur, des outils automatiques de fabrication et souvent un débogueur

Page suivante : 4.3 Implémentation du service web Agenda

Retour au menu : WEB SERVICES : ETUDE ET CONCEPTION D’UNE PLATEFORME DE SERVICES POUR UN ENVIRONNEMENT NUMÉRIQUE DE TRAVAIL D’UNIVERSITÉ