IBM Software Group | Lotus software Session S34 Web 2.0 Notes/Domino Philippe Riand Domino Architect [email protected] IBM Confidential * IBM Software Group | Lotus software La Revolution Domino Domino est une plate-forme de développement RAD d’applications collaboratives Gestion des bases de données flexible • • • Données semi structurées Organisation hiérarchique des documents Adaptée aux changements de modèle de données Déploiement d’applications simplifié • • Simple copie d’un NSF, contenant données+application Mise a jour grâce à la réplication Mais… Domino est basé sur des éléments propriétaires qui ne sont pas conçus pour le WEB * IBM Software Group | Lotus software Les Apports de la Version 8.5 Domino Designer & Eclipse Augmente les possibilités intrinsèques de Designer • Recherche, Éditeurs (CSS, JavaScript…) Propose un mécanisme standard d’extension Un nouvel élément de design: XPages Conçu pour le développement d’applications Web modernes Résout les limitations actuelles • • • • * Séparation modèle de données/interface graphique Accès étendu aux données Contrôle du HTML génèré … IBM Software Group | Lotus software Une demo plutôt qu’un long discours… L’existant… … La nouveauté * IBM Software Group | Lotus software Intègré dans Eclipse Domino Designer 8.5 Éditeur WYSIWYG XPages Palette de contrôles + Contrôles personnalisés Contrôles Accès aux données Vue hiérarchique * WYSISWG, source, Aperçu… Propriétés IBM Software Group | Lotus software Domino Designer 8.5 Totalement intégré dans Eclipse Propose de nouveau éditeurs CSS, XML, HTML… XPages Le contenu des NSF est accessible au travers du système de gestion de fichiers virtuel d’Eclipse Disponible pour tous les plug-ins * IBM Software Group | Lotus software La Technologie XPages Développée entièrement en Java Basée sur le standard JSF (Java Server Faces) Transparent pour le développeur Conçue pour développer des applications Web 2.0 Utilise HTML/CSS/JavaScript - Dojo Contient des fonctionnalités natives Ajax Contrôles personnalisés Conçue pour faciliter le développement d’applications Domino Nouveaux éléments de Design dans le NSF • Immédiatement disponibles – pas de déploiement nécessaire Réutilise les éléments existants (forms, views, agents…) Expose l’API Notes/Domino * IBM Software Group | Lotus software Une Application XPages * IBM Software Group | Lotus software Le Format de Fichier XPages Extensible, Base sur XML Pas de tags JSF, simple a comprendre Toutes les propriétés sont calculables * IBM Software Group | Lotus software Contrôles Personnalisés Crées par assemblage de contrôles existants Se comportent comme des Le contrôle est créé comme une page contrôles natifs Apparaissent dans la palette de contrôles Supportent la définition de Il apparaît automatiquement dans la palette propriétés Passage de paramètres Notion de « zone éditable » Le contrôle est utilisé directement dans une page * IBM Software Group | Lotus software Fonctionnalités AJAX Rafraîchissement partiel Accessible comme une option dans le panneau “Événements” Liste de suggestions Disponible pour les zones d’édition Une formule JavaScript retourne la liste de valeurs possibles Utilise Dojo Dojo (1.1.1) est pré-installé dans le serveur Domino * IBM Software Group | Lotus software Accès aux données XPages étend JSF avec la notion de source de donnes Peut utiliser n’importe quel format de données La connexion avec les contrôles s’effectue au travers de langages, comme JavaScript, XPath… La connexion avec les données Domino Utilise les API Notes/Domino publiques Une pages peut accéder a plusieurs documents/vues, même situés sur des serveurs/bases de données différents Les objets exposés sont standard (Document, Vue…) Accès direct aux objets globaux • * “session”, “database” IBM Software Group | Lotus software Le Programmation sur le Serveur Les agents ne sont pas nécessaires Mais sont quand même disponibles… Actions simples Large éventail disponible Peuvent être groupées Peuvent être étendues par des partenaires JavaScript sur le serveur Large librairie de classes disponible Accès direct a Java Environnement de développement moderne * IBM Software Group | Lotus software La Programmation sur le Client Les événements ont une partie cliente et serveur Accès facilité a l’identifiant client Librairies JavaScript client et serveur Disponibles comme ressources de page Peuvent référencer des modules Dojo * IBM Software Group | Lotus software Utilisation des Feuilles de Style (CSS) Le « Look and Feel » repose entièrement sur la norme CSS Assure la consistance entre applications Facilite la conception d’applications accessibles Les feuilles de styles sont référencées dans la page Classes & styles peuvent être appliqués a chaque contrôle * IBM Software Group | Lotus software Gestion des “Thèmes” Permet le changement du « Look & Feel » d’une application sans toucher au code de l’application Les Styles sont automatiquement appliqués aux contrôles Peut être désactivé pour certains contrôles La définition des propriétés est effectuée au travers d’un nouvel élément de design: « theme » Définis à différents niveaux: serveur et application. * IBM Software Group | Lotus software Internationalisation Les textes sont automatiquement extrait des contrôles Certaines propriétés sont marquées « traductibles » • Ex: Le libellé d’un bouton Les pages peuvent être redéfinies par « Locale » La localisation s’effectue dans Domino Designer. Il n’y a pas de pénalité a l’exécution. La langue et le fuseau horaire de l’utilisateur sont disponibles au travers de propriétés d’exécution. API étendue disponible *