Domino et Web Services

Transcription

Domino et Web Services
Agenda
Web Services Lotus Domino
et intégration WebSphere Portal
Christophe Revault,
Responsable Solutions Collaboratives
[email protected]
ASI Informatique - www.asi-informatique.fr
contact : 0811 094 021
Agenda
Qu’est ce qu’un Web Service ?
Les bénéfices des Web Services ?
Domino et les Web Services.
Implémentation dans Domino.
Création d’un Web Service.
Des exemples d’utilisations.
19/08/2008
Conseil - Ingénierie - Intégration
Qu’est ce qu’un Web Service ?
► Un mécanisme de communication standard pour faire dialoguer
deux applications basées sur des technologies hétérogènes.
► La communication repose, le plus souvent, sur l’échange de
messages XML
► Utilisation d’un ensemble de protocoles standardisés répartis
selon 4 axes :
19/08/2008
•
La couche transport : communication entre les applications: HTTP est
la plus utilisée
•
Echange des messages : fichiers XML communs (SOAP, …)
•
La description des services : c’est la description de l'interface
publique des Web Services : WSDL
•
La recherche de service : Le protocole standard le plus utilisé pour la
découverte de services est UDDI.
Conseil - Ingénierie - Intégration
Qu’est ce qu’un Web Service ?
► WSDL & SOAP
• WSDL - Web Service Description Language
– Interface, contrat entre le provider (fournisseur) et consumer
(consommateur)
– Basé sur XML
– Service, méthodes, paramètres et types
• SOAP - Simple Object Access Protocol
– Distribution des informations échangées - Le protocole “SOAP”
– Basé sur XML
– Message formaté, encodage
Web Service
Consumer
(Client)
SOAP over HTTP
Web Service
Provider
(Server)
WSDL
19/08/2008
Conseil - Ingénierie - Intégration
Les bénéfices des Web Services
► C’est une solution simple pour connecter deux applications
entres elles :
• Utilisation des standards et protocoles ouverts.
• Basé sur XML et le transport HTTP
► Est normalisé par la W3C (World Wide Web Consortium)
► Est basé sur le principe d’interaction entre les applications.
• Réutilisation des composants.
► Peut être appliqué à différents scénarios applicatifs :
• Navigateur Web, Client Riche, Serveur à Serveur
►Exposer et connecter les données Domino.
19/08/2008
Conseil - Ingénierie - Intégration
Domino et les Web Services (1/2)
► La version 7 de Domino donnait la possibilité d’héberger des
Web Services dans une application
► La version 8 va plus loin en donnant la possibilité à une
application Domino d’utiliser un Web Service stocké sur un serveur
autre que Domino
► Développement de Web Services : il est conseillé de développer
directement sous Eclipse puis d’importer les classes sous Domino
► Un Web Services peut être développé, sous Lotus, en langage
LotusScript ou Java
19/08/2008
Conseil - Ingénierie - Intégration
Domino et les Web Services (2/2)
► Les limites de Domino :
• Utilisation du protocole SOAP v1.1 uniquement (HTTP Post)
• Version du WSDL : 1.1
► Le niveau de sécurité d’un Web Service est le même que celui
d’un agent
► Possibilité d’importer un fichier WSDL existant : Domino génère
automatiquement le squelette du Web Service (définition du Web
Service) qui peut-être enrichi par la suite.
► De même, il est possible de créer directement un Web Service
dans une application Domino. Langages : LotusScript ou Java
19/08/2008
Conseil - Ingénierie - Intégration
Implémentation dans Domino (1/3)
► Nouvel élément de structure
► Code LotusScript ou Java
► Provider : Réponse sous
SOAP à travers HTTP
19/08/2008
Conseil - Ingénierie - Intégration
Implémentation dans Domino (2/3)
Sécurité des Web Services
► Droits d’accès Authentification & Autorisation
•
•
•
•
•
Name/Password
SSO Token
Certificat Client
DSAPI
LCA de la base
► Droits d’exécutions
•
•
•
•
19/08/2008
Run as Web User
Run as Signer
Run on Behalf of
Runtime security level
• Restricted
• Unrestricted
• Full Admin
Conseil - Ingénierie - Intégration
Implémentation dans Domino (3/3)
WSDL
► Un élément de structure Web Service Un document WSDL
19/08/2008
Conseil - Ingénierie - Intégration
Création d’un Web Service (1/2)
1- Importation du fichier WSDL généré sous Eclipse dans
l’application Lotus Notes : le squelette du WS est automatiquement
généré.
19/08/2008
Conseil - Ingénierie - Intégration
Création d’un Web Service (2/2)
2- Exporter le source sous Eclipse afin d’enrichir les classes.
Il est conseillé de modifier le moins possible les classes
générées automatiquement par Domino lors de l’import du
fichier WSDL (cas de ré import de fichier WSDL).
19/08/2008
Conseil - Ingénierie - Intégration
Des exemples d’utilisations
► Service de fourniture d’une liste de documents (vue).
► Services pour les courriers et l’agenda.
► Service de fourniture de données pour une application Web,
riche ou Portail.
► Intégration de Domino dans les applications composites.
►…
19/08/2008
Conseil - Ingénierie - Intégration