Ametys Runtime.

Slides:



Advertisements
Présentations similaires
Le struts validator – framework de validation
Advertisements

ACubeOLAP Client Olap en ACube.
Architecture Technique de la plate-forme CASTORE
Cycle de vie de documents web
Introduction Fonctionnement PluginsConfigurationLes données Le framework MAG Framework de conception de canaux complexes Implémente IChannel Possède son.
Chapitre 3: Système d’exploitation
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
Le développement d’applications sous Lotus Notes
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
51 Les technologies XML Cours 7 : Utilisations dXML Janvier Version 1.0 -
Projet Webase. I. La définition du projet 1. Lexistant : Webase 4 2. Cahier des charges 3. La répartition des données 4. Le modèle de données 5. Le choix.
Projet J2EE Maverick XMLBeans Garcel Jean-Baptiste – Le Loc Martin – Muller Thibaut.
Présentation des frameworks pour Java EE
Soutenance de stage · Par : Guillaume Prévost · Entreprise : Cynetic
Sécurité Informatique
Les outils d’intégration continue
Comparatif des différents CMS Les CMS de E-commerce.
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
PGI conçu pour les Groupements d’Employeurs, conçu et diffusé par
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Forum JEE: framework STRUTS 1 et iBATIS
Etude des Technologies du Web services
26 juin 2009LEFEVRE Christophe1 Module raw et connexions distantes.
Présentation Installation Fonctionnement
XML-Family Web Services Description Language W.S.D.L.
Struts 1 & 2 Tlohi ibtissam Tabit boutaina Ilias bouras
Développement Rapide dApplications Web avec.NET « Mon premier site »
Une base de données XML sur le net
Projet JAVA EE Approfondi
28 novembre 2012 Grégory Petit
1 CLUB DES UTILISATEURS SAS DE QUÉBEC COMMENT TRANSFORMER UN PROGRAMME SAS EN TÂCHE PLANIFIÉE SOUS WINDOWS Présentation de Jacques Pagé STRiCT Technologies.
ASP.NET Par: Hugo St-Louis. C ARACTÉRISTIQUES A SP. NET Évolution, successeur plus flexible quASP (Active Server Pages). Pages web dynamiques permettant.
Une chaîne éditoriale développée dans le cadre du CIRM François Dagorn Journées pédagogiques de lIFSIC.
Projet Trivial Poursuite
SSO : Single Sign On.
Cilia Mediation Framework v0.9.0 Implantation.. Plan Cilia: c'est quoi? Capacités. Cilia: Modèle d'implantation. Mise en œuvre: Médiateur Cilia. Assemblage.
Module 4 : Maintenance des pilotes de périphériques
Projet de Master première année 2007 / 2008
‘‘Open Data base Connectivity‘‘
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
Date : Juillet 2014 Formation : TAI Formateur : Tayeb BENDJELTI
Outil de gestion des cartes grises
eVinci-XP | Portail de services
Exploration de la programmation android Formation Assurer par: Club FreeWays Réalisé par: BOUHJJA Lamia.
Soutenance ProJet Individuel
La GEIDE au cœur du référentiel
Metro Web Services Ben Yaflah Marouen Dhrif Mohamed Hbib Hajlaoui Nader.
1 journée, 5 sessions, 1 réalisation.NET Enterprise Realization Day.
ANTOINE CHEVERT , PASCAL LAMY
Structure de Base d’un ordinateur Matière : Informatique
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
Struts.
Présentation ESTRABOX
Administration du site
Comprendre l’ergonomie du module STSWEB. La page d’accueil de STSWEB Code et Nom de l’établissement Version du module Campagne en cours Année affichée.
© 1 Struts Java, Applications J2EE Conclusion. © 2 Struts Java, Applications J2EE Les contre Framework générique –Conçu pour répondre à tous les besoins,
Citrix ® Presentation Server 4.0 : Administration Module 9 : Déploiement d'applications.
1 Complément JAVA 1 - Eclipse. 2 Plan Notion d'environnement de développement Interface d'Eclipse Utiliser Eclipse Éditeur de code Fonctionnalité supplémentaire.
Fonctionnalité et protocole des couches applicatives
Module 2 : Planification de l'installation de SQL Server
Vous présente en quelques réalisations un réel savoir-faire, le fruit de longues années d’expériences, aujourd’hui à votre service. Toutes les fonctionnalités.
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
ETM IBN ROCHD Présenté par : Mlle KHETTAR Lamia & Mlle AIT SAADA Kahina Novembre 2012.
Chapitre8 Configuration de l'adressage TCP/IP et de la résolution de noms Module S41.
Installation du PGI – CEGID
FACTORY systemes Module 2 Section 1 Page 2-3 Installation d’Industrial SQL FORMATION InSQL 7.0.
Chapitre 12 Surveillance des ressources et des performances Module S41.
GBIF NODES Committee Meeting Copenhague, Danemark 4 octobre 2009 L’outil de publication intégrée du GBIF (‘GBIF Integrated Publishing Toolkit’ ) Alberto.
Transcription de la présentation:

Ametys Runtime

Ametys c’est tout d’abord une secte On écoute de la musique de daube On fume On boit On jure Et le vendredi c’est Cloclo !!!

Définition Framework d’application WEB Surcouche « légère » à Cocoon Peu d’overload Tout (ou presque) est débrayable Surcouche « importante » à Cocoon Gains fonctionnels importants Code réutilisable (plugins)

Gains Notions de « workspaces » et de « plugins » Paramètres de configuration Système AUGRE© Plugin Core et Workspace Admin Nombreux helpers

Workspace et plugins Le workspace est une application du projet Projet = Workspace applicatif principal + Workspace administrateur système Le workspace est le « chef d’orchestre » Espace d’url. Le plugin apporte les fonctionnalités Il est accessible via le workspace Ce découpage permet de réutiliser le code et même directement les fonctionnalités

Workspace workspaces/ [monworkspace]/ i18n/ messages.xml resources/ … resources_dynamic/ workspace.xml sitemap.xmap

Workspace workspace.xml

Workspace Sitemap.xmap Doit permettre l’accès aux plugins De manière enrobée De manière directe Doit gérer l’authentification N’a pas besoin de gérer les erreurs

Plugins Points d’extensions Décomposition en « features » Multiples (UIItem…) Simple (UsersManager…) Décomposition en « features » Groupement d’extensions Solidaires face à la désactivation

Plugins plugins/ [monplugin]/ i18n/ messages.xml resources/ … resources_dynamic/ plugin.xml sitemap.xmap

Plugins Plugin.xml

Runtime.xml Fichier de configuration central Permet de donner un nom de version à l’application Permet de contrôler le 1er démarrage de l’application Permet de choisir le workspace par défaut et de désactiver des workspaces Permet de désactiver des features Permet de sélectionner les extensions simples Permet de faire des familles de plugins

Runtime.xml

Message subliminal Avez-vous tous imputé ?

Configuration Glossaire : Paramétrage : choix du développeur utilisateur en LDAP ou en JDBC Configuration : choix de l’administrateur url de la base de donnée

Configuration Gestion des paramètres de configuration Une application non configurée ne démarre pas Gestion des dépendances entre paramètres de configuration et composantes/extensions Utilisation simple même hors AVALON Interface de saisie automatisée

Configuration Déclaration d’un paramètre dans un plugin Un paramètre déclaré doit être référencé Utilisation : Config.getInstance().getValue(…) ou {config:…}

Espace publicitaire à louer Message publicitaire Espace publicitaire à louer Votre publicité ici pour pas cher ! Appeler le 05 61 00 73 41 et demandez Gauthier Pour toute commande avant le 1er novembre, un CMS est offert

AUGRE Gestion de l’Authentification Gestion des Utilisateurs Gestion des Groupes d’utilisateurs Gestion des Droits Gestion des Erreurs

AUGRE Authentification Gérer l’authentification Point simple : org.ametys.runtime.authentication.CredentialsProvider  Donner les credentials Point multiple : org.ametys.runtime.authentication.AuthenticationManager  Vérifie qu’un utilisateur peut se connecter Mettre de l’authentification de son workspace <map:action name="authenticate" src="org.ametys.runtime.authentication.AuthenticateAction/> … <map:match pattern="**"> <map:act type="authenticate"/> </map:match>

AUGRE Utilisateurs Gérer les utilisateurs Point simple : org.ametys.runtime.user.UsersManager Récupérer l’utilisateur courant UserHelper.isAdministrator() UserHelper.getCurrentUser()

AUGRE Groupe Gérer les groupes Point simple : org.ametys.runtime.user.GroupsManager

AUGRE Droit Gérer les droits Point simple : org.ametys.runtime.right.RightsManager Point multiple : org.ametys.runtime.plugins.core.right.RightsExtensionPoint

AUGRE Erreurs Gérer les erreurs Point simple : org.ametys.runtime.exception.ExceptionHandler

AUGRE Erreurs Gérer les erreurs Point simple : org.ametys.runtime.exception.ExceptionHandler

AUGRE Les autres points d’extensions simples noyau org.ametys.runtime.request.InitRequestHandler  appelé à chaque requête org.ametys.runtime.plugins.core.administrator.version.VersionsHandler  pour gérer les versions de l’application

Points d’extensions multiples Eléments d’interaction org.ametys.runtime.ui.item.UIItemManager Input modules org.apache.cocoon.components.modules.input.InputModuleSelector Sources org.apache.excalibur.source.SourceFactorySelector Composants de sitemap partagés org.ametys.runtime.cocoon.SitemapConfigurationExtensionPoint

Workspace Admin Workspace administrateur Espace authentifié pour l’administreur Configuration Journaux Etat du système Plugins … exemple

Plugin Core Implémentations de AUGRE Authentification Automatique : pour démo Basique (nécessite un error handler dans la sitemap) Formulaire et Cookie Remote JCIFS CAS

Plugin Core Implémentations de AUGRE Utilisateurs Statique (liste en dur pour démo) JDBC (modélisable) Lecture ou Modifiable Authentifiable ou non LDAP

Plugin Core Implémentations de AUGRE Groupes Empty (pas de groupes) JDBC LDAP Utilisateur contient les groupes Groupes contient les utilisateur

Plugin Core Implémentations de AUGRE Droits Basic (tous les droits) Profils Hiérarchique avec profils

Helpers Base de données Gestion de pool JDBC Gestion de SQLMap org.apache.avalon.excalibur.datasource.DataSourceComponentSelector ConnectionHelper Gestion de SQLMap org.ametys.runtime.plugins.core.sqlmap.SqlMapExtensionPoint

Helpers Graphique STools Facile Beau Ergonomique Rapide Performant BugFree [Tout autre compliment que vous trouverez]

Helpers Schéma XSD À configurer dans Eclipse plugin.xml workspace.xml runtime.xml

Helpers ActionResultGenerator Pour les webservices ajax <map:match pattern="administrator/password/set"> <map:act type="administrator-password-set"> <map:parameter name="oldPassword" value="{request-param:oldPassword}"/> <map:parameter name="newPassword" value="{request-param:newPassword}"/> <map:parameter name="confirmPassword" value="{request-param:confirmPassword}"/> <map:generate type="action-result"> <map:parameter name="result" value="{result}"/> </map:generate> <map:serialize type="xml"/> </map:act> </map:match>

Helpers I18nizableText Pour stocker en java du texte (i18n ou pas) Pour saxer en java des balises i18n

Helpers ParameterHelper Permet de gérer des paramètres typés Booléen Date Long String Password Binaire Conversion Object  String

Attention Et pour finir…

Interrogation surprise flash éclair Combien de points d’extension simples sont définis dans le Runtime ? Combien de points d’extension multiples sont définis dans le Runtime ? Si je choisi le BasicCredentialProvider et un UsersManager non authentifiable, que se passe-t-il ? Qu’est-ce-qui est vert et qui pue au fond des bois ? Que se passe-il le jeudi d’une semaine où le vendredi est férié ? Que ferez-vous le 31 octobre ?

Réponses Combien de points d’extension simples sont définis dans le Runtime ? 7 Combien de points d’extension multiples sont définis dans le Runtime ? 8 Si je choisi le BasicCredentialProvider et un UsersManager non authentifiable, que se passe-t-il ? Bonne question Qu’est-ce-qui est vert et qui pue au fond des bois ? Un scout crevé Que se passe-il le jeudi d’une semaine où le vendredi est férié ? On écoute Cloclo quand même Que ferez-vous le 31 octobre ? Vous imputez aussi car c’est le dernier jour du mois !