Architecture J2EE Web Jean-Jacques LE COZ. J2EE Web Container JSP Page Servlet J ava 2 Standard Edition APIs EJB Container EJB JDBCJMS JNDI JTA JavaMail.

Slides:



Advertisements
Présentations similaires
Master SIR (M2) Année Développement en environnement J2EE de Web services pour l'interopérabilité du projet CASTORE ce stage de fin d’étude a.
Advertisements

« Les Mercredis du développement » Ajax / Client CallBack / Atlas
JEE 5 - JSF F.Pfister 2 institut eerie Les technologies du web Servlets JSP MVC Model 1 : servlets + JSP MVC Model.
Cours 5 : XML et les architectures N-tier Janvier Version 1.0 -
SOA et Services Web Dr. Rim Samia Kaabi 26 mars 2017.
Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.
Plan Portlets La norme JSR-168 Qu'est-ce qu'une Portlet ?
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
Serveurs web pour JSP et Servlets
Architecture. Architecture Enjeux Les Enjeux Trouver une solution e-Business Accessible à partir d’un navigateur Web Accédant au système via un Portail.
Exposé de Système - Informatique et Réseau
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
1 Les technologies XML Cours 1 : Les Web Services et Architectures Orientées Services Fé vrier Version 1.0 -
51 Les technologies XML Cours 7 : Utilisations dXML Janvier Version 1.0 -
Architecture Technique de la plate-forme CASTOR Projet Castor © Ecole des Mines de Nantes

Design Pattern MVC En PHP5.
CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV EJB Entité Module Java Expert.
NFE 107 : Urbanisation et architecture des systèmes d'information
Présentation des frameworks pour Java EE
Introduction aux services WEB
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Forum JEE: framework STRUTS 1 et iBATIS
Etude des Technologies du Web services
pour les applications Web :
JAVASERVER FACES Un framework Java pour le développement Web.
Cours GLG203 Cours J2EE JDBC, RMI, IIOP, Sécurité, XML
Ajax. Contexte Dabord, il y a eu les terminaux des ordinateurs centraux (environnements TSO, CICS, etc.) et les terminaux plein écran des environnements.
Développement Rapide dApplications Web avec.NET « Mon premier site »
Normandy JUG Présentation de JSF.
Projet JAVA EE Approfondi
Clients riches RIA (Rich Internet Application) / RDA
Architecture dun site de vente au détail1 Modèle d'un site simple de vente Lexemple du livre Ruby on Rails Partie II Java Adventure Builder Demo Réalisé.
AJAX.
Adaptée du cours de Richard Grin
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
19 Mai 2009 CADOT, ROMON, NOEL, GUILLOUET, MONGENET-LAMAISON.
Découverte des Framework : SPRING & JAXB
AngularJS.
Cours de programmation web
HIBERNATE Mapping Objet / base de données relationnelle
« Le plaisir du chercheur : retrousser les jupes de la nature » Jean Rostand Proposer une « Interface Homme Machine » en utilisant une technologie Client.
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Metro Web Services Ben Yaflah Marouen Dhrif Mohamed Hbib Hajlaoui Nader.
Le web service
Mastère Professionnel Systèmes de Communication et Réseaux
GESTION DE COMPOSANTS ELECTRONIQUES
Présentation du framework JSF (Java Server Faces) dans le modèle événementiel MVCII
Struts.
Les différents modèles d’architecture technique
AJAX.
Conférence Témoignages métiers- Supinfo Nantes  Création en 1979  CA de 150 Millions €  Présence nationale et internationale  2300 personnes en France.
Les Servlets Présentation Cycle de vie Principe de fonctionnement
EPREUVE E6 : PARCOURS DE PROFESSIONNALISATION
Développement et design Web Awaves academy Stockholm 2006.
Template 5.2 © Valtech SPRING Fr Le framework Spring.
Web Services 17/01/2009.
Séance /01/2006 Les technologies des sites dynamiques.
13/07/2015 JSF Java Server Faces Master 2 Pro GLR TER David Mihura Eric Le Merdy.
Fonctionnalité et protocole des couches applicatives
Apports des clients riches dans le monde du WEB 2.0
Architecture Client/Serveur
Architectures Logicielles Java GLG203 GLG204
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
Applications distribuées Introduction Jean-Jacques LE COZ.
AJAX Jean-Jacques LE COZ. Introduction Technologie incontournable aujourd'hui Soubassement technique au Web 2.0 Technologie déjà présente dans les applications.
DWR Jean-Jacques LE COZ. Introduction Projet DWR Framework AJAX Projet Open Source commencé en 2004 Licence GPL (Apache Software License v2) Sponsorisé.
Transcription de la présentation:

Architecture J2EE Web Jean-Jacques LE COZ

J2EE Web Container JSP Page Servlet J ava 2 Standard Edition APIs EJB Container EJB JDBCJMS JNDI JTA JavaMail JAF RMI-IIOP

Architecture complète J2EE un exemple basé sur une solution logiciels libres

Architecture Web trois niveaux sources de données SGBDR Serveur d'applications client navigateur Autres applications Internet 12 3 N

Modèle Web Modèle client-serveur basé sur HTTP Milieu des années 90 Communication entre client et serveur Basée sur un mécanisme requête-réponse Ressemble aux anciennes applications avec terminaux Côté client Interface standard (navigateur) Déploiement simplifié

Modèle Requête/Réponse Application Web Navigateur Requête/ réponse Requête/ réponse Requête/ réponse

Modèles Stateless/Stateful

Modèle Stateless Modèle sans état Calqué sur le protocole HTTP Intérêt Pas de gestion de service par utilisateur Supporte de fortes montées en charge Désavantages Gestion de l'état à la charge du programmeur Gestion de sessions Cookies, champs cachés, variables URL Pas de retour en arrière

Programmation des sessions Processus 1.Obtenir du client l'identifiant de l'utilisateur 2.Restaurer l'état de la conversation à partir de la session 3.Exécuter la requête 4.Construire la réponse 5.Mémoriser l'état de la conversation dans la session 6.Envoyer la réponse

Modèle “Stateful ” Nouveau modèle avec état C'est un modèle de programmation Le protocole reste HTTP (sans état) Concept de continuation L'état de l'application est chargé avant une requête L'état de l'application est sauvé après chaque requête

Intérêts du modèle Stateful Il assure le sans état mais masqué par le framework Il fournit au programmeur un modèle avec état Le framework peut restaurer n'importe quelle continuation n'importe quand

Modèle stateful Web application Utilisateur débutfin Requête

Modèle MVC

Histoire du modèle MVC (1) Conception en 1973 Dr. Trygve Reenskaug (Oslo – Norvège) Non orienté objet Revu en 1978 Xerox (Palo Alto – centre de recherche) Adapté à l'orienté objet

Histoire du modèle MVC (2) Implémentation en 1980 Comme pattern dans le langage SmallTalk Xerox Adaptation au framework Servlet MVC2 ou MVC modèle 2

Modèle MVC Modèle Représenté par les couches métier de l'application Vue Représenté par les couches IHM de l'application Contrôleur Représenté par les couches qui gérent la logique applicative

Mécanisme MVC Modèle - Encapsule l'état de l'application - Notifie les vues des changements d'état Contrôleur - Définit le comportement de l'application - Met en correspondance les actions de l'utilisateur avec la mise à jour du modèle - Sélectionne les vues pour les réponses Vue - Présente l'état du modèle - Réalise des requêtes de mise-à-jour sur le modèle - Prévient le contrôleur des événements provenant de l'utilisateur événement invocation de méthode invocation de méthode invocation de méthode

Design Pattern sous-jacent Design pattern Observateur Logique événementielle Mécanisme de notification des événements

Le modèle MVC2

Modèle adapté à J2EE Web Contrôleur Composant Servlet Vue Composants JSP Modèle Classes POJO et/ou JavaBean

Design Pattern Commande MVC2 repose sur le pattern Commande

Design Pattern Fabrique MVC2 repose sur le pattern Fabrique

MVC2 vue modèle contrôleur pattern commande

Frameworks

Qu'est-ce qu'un framework ? Un ensemble de librairies Propose une API de programmation Plusieurs paradigmes possibles É vénementiel, Orienté Objet, Aspect Propose une vision Architecture, méthode Permet de développer plus rapidement et plus proprement Peut proposer un outillage

Frameworks orientés GUI Echo NextApp JSF (Java Server Faces) Projet SUN MICROSYSTEM Spring MVC Communauté spring Struts Consortium Apache

Frameworks de persistance Hibernate Communauté hibernate iBatis Consortium Apache Cayenne Communauté cayenne Jpox Communauté JPox

Frameworks micro-noyau Spring Inversion de conrôle IOC Inversion des dépendances AOP Aspect Oriented Programming Connecteurs EJB Intergiciels de persistance (JDO, Hibernate) JSF Ajax ?

Technologie AJAX

AJAX : c'est quoi ? Asynchronous JavaScript and XML Technologie côté client Permet d'éviter le rechargement des pages De créer des applications plus riches et plus dynamiques Combine XML et JavaScript Une alternative aux clients riches Plus un pattern qu'une technologie

Mécanisme Ajax côté client Repose sur un objet XMLHttpRequest Capable d'envoyer une requête asynchrone POST ou GET au serveur SOAP au serveur Doit enregistrer une méthode CallBack pour traiter la réponse du serveur Capable de parser la réponse XML avec DOM La page du navigateur est modifiée par les données issues de la réponse XML

Mécanisme Ajax côté serveur Parsing de la requête Traitement de la requête Servlet Service Web Sérialization XML de la réponse Envoie de la réponse au client

Pattern Ajax Client Serveur HTTP Navigateur javaScript service Web ou servlet requête asynchrone réponse XML rafraîchissement de la page

Cycle de vie Ajax avec servlet

Ajax : problèmes (1) Tous les navigateurs ne supportent pas XMLHttpRequest La configuration du navigateur ne permet pas le support de XMLHttpRequest L'utilisateur non habitué peut ne pas se rendre compte du rafraîchissement

Ajax : problèmes (2) Attention à l'augmentation de la charge de travail du serveur Les requêtes sont asynchrones, il n'y a aucune garantie de retour Augmentation du trafic réseau

Frameworks AJAX OpenLaszlo Laszlo Systems Inc Orientation client riche Indépendant de l'application web ASP, Java, PHP JSF avec certains UI components Oracle ADF Faces

Conclusion Les applications Web ont plein d'avenir Facilité de déploiement Gestion centralisée Sécurité Très grande variété de clients Les applications Web et les entreprises Avec les technologies client riche Très adaptées aux applications de gestion