4. Quels sont les Web Services?
(Réponse courte)
Un service Web est une ressource
qui
Est accessible via HTTP (ou HTTPS)
Retourne XML (SOAP)
4
5. Quels sont les Web Services?
(Réponse longue du W3C)
Un service Web est un système logiciel
identifié par une URL
dont les interfaces publiques et les fixations sont définis et
décrits en utilisant XML.
Sa définition peut être découvert par d'autres systèmes logiciels
Ces systèmes peuvent alors interagir avec le service Web d'une manière
prescrite par sa définition, en utilisant XML des messages en
fonction véhiculées par les protocoles Internet
. définition
http://www.w3.org/TR/wsa-reqs/#id2604831 5
6. Applications Web vs Web Services
Web Apps
Retour HTML
Prenez les données GET ou POST comme entrée
Résultat destiné à un humain (via un navigateur)
Informelle (au mieux) une description de données qui accepte de ressources et de
résultat qui retournent une ressource
Web Services
Retour XML (SOAP)
Prenez XML (SOAP) en entrée
Résultat destinés à un programme
Définition formelle de données qui accepte de ressources et de résultat qui retourne
une ressource
6
7. Avantages Web Service
Langue de neutralité
Les services Web de définir le format du message, pas le langage de programmation
utilisé
Un client ne connaît pas la langue utilisée par le service, un service ne connaît pas la
langue utilisée par le client
interopérabilité
Définition des données demande et de réponse permet à n'importe quel service Web
d'interagir avec les autres.
Faible barrière à l'entré.
Des outils très simples pour Java, Ruby, les langues de Microsoft, etc.
Peut écrire des services sans connaître WSDL ou SOAP!
Support à l'industrie
Très largement adoptée. Pas de danger d'investir dans la mode de courte
durée ala Ada et CORBA.
7
8. Composants Web Services
SOAP
Basé sur XML structure utilisée pour envoyer et recevoir des messages
A l'origine synonyme de Simple Object Access Protocol
Sigle trompeuse chuté dans la version 1.2 de SOAP
WSDL
Basé sur XML description d'un service Web
Lorsqu'il réside
Qu'est-ce qu'il peut faire
Comment l'invoquer
Stands pour les Web Service Description Language
UDDI
Stands versez les Web Services Description Language
Stands pour Description, Discovery universelle et de l'Intégration
8
9. Apache Axis2
Ensemble d'outils pour simplifier les services Web
Services
Créer un service Web depuis n'importe quel classe Java
Créer service stub Web à partir des fichiers WSDL
Construire fichier WAR pour le déploiement sur un serveur basé sur Java
clients
Créer stubs client à partir de fichiers WSDL
utilisation
plugins Eclipse
Intégré dans Java EE version d'Eclipse
Téléchargement gratuit de http://www.eclipse.org/downloads/
Choisissez "Eclipse IDE for Java EE Developers" Ces tutoriels va utiliser
9
10. Utilise des Axis2
Première Java (bottom-up) Services
Commencez avec une classe normale de Java (POJO)
Exposer les méthodes que les Web Services
Couvert dans ce cours
Les clients de Java-services aux Premières
Construire le client pour un service intégré avec Java-première (bottom-up) approche
Couvert de deuxième conférence
WSDL First (top-down) des services
Commencez avec un fichier WSDL
Créez automatiquement des stubs Java
Ajouter la logique métier
Couvert de troisième conférence
Les clients à partir de WSDL First-services
Construire le client pour un service intégré avec WSDL et unième (top-down)approche de Couvert
de quatrième conférence
10
12. Télécharger et installer Axis2
Télécharger
Commencez à http://ws.apache.org/axis2/download.cgi
Choisissez dernière version
Choose DERNIÈRE version de
Choisissez la version de DERNIÈRE Binary Distribution
Installer
Décompressez dans le répertoire de votre choix
This didacticiel utilise C: , résultant dans C: axe2-1.4
12
13. Dites Eclipse sujet Axis2
Fenêtre Préférences Web Services Axis2 Préférences
Pour "l'emplacement d'exécution Axis2", entrez le chemin d'installation de
la diapositive précédente
Appuyez sur Appliquer
Appuyez sur OK
13
15. idée
Take normal Java class (POJO) public class Blah
{public int doFoo(String arg) { ... } public String
doBar(double arg) { ... }
Aucune des interfaces spéciales, les classes
parent, packages, ou de la méthode des noms
Automatiquement exposer les méthodes que les Web
Services
Blah devient le nom du service
doFoo et doBar accessibles via HTTP et SOAP
15
16. Faire Web Project Dynamique
Faire des projets de base
FichierNouveau projet Web Dynamic Web Project
• Appuyez sur Suivant
• Appuyez sur Suivant
Si vous avez déjà
fait une dynamique
Projet Web dans cet espace
de travail
vous pouvez juste faire Nouveau
Dynamic Web Project
16
18. Faire Bean Service?
(Classe Java avec des méthodes régulières)
Créer normale classe Java
Aucune exigence particulière pour
package
interfaces
superclasse
Noms des méthodes (ne doivent pas être getBlah et setBlah)
Les méthodes publiques qui deviendra plus tard une partie
de service Web
Ajouté automatiquement lorsque vous faites Web Service bottom-up
cycle de vie
Classe seront re instancié à chaque demande
Ainsi, les besoins zéro argument du constructeur
Les champs ne sont pas persistants, sauf s'ils sont statiques
18
25. Résumé
Faire de projet Web dynamique
Fichier Nouveau projet Web Dynamic Web Project
Ajout du support Axis2
Choisissez une configuration personnalisée, appuyez sur Modifier
Choisissez une configuration personnalisée UNE, appuyez sur Modifier
Créer normale classe Java
Aucune exigence particulière
Exposer la classe en tant que Service Web
R-cliquez sur la classe Java
Nouveau Autres Services Web Service Web
déployer
cliquez R-sur serveur, Ajouter et supprimer des projets, sélectionnez projet, démarrer le
serveur
test http://host/app-name/axis2-web/
25