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