Vous êtes sur la page 1sur 21

Système d’Information Distribué

Plate forme JEE

1
Y. GAFOUR
Université de Tiaret
2 Plan du cours

 Plate-forme Java EE
 Qu'est-ce que le serveur ?
 Serveur web
 Serveurs d’applications
 Java EE application distribuée à plusieurs niveaux
 Machine cliente
 Serveur Java EE
3 Plate-forme Java EE

 La plate-forme Java EE est développée via le Java Community Process (JCP),


qui est responsable de toutes les technologies
 Avec Java EE , le développement des applications Java d'entreprise n'a jamais
été aussi simple ou rapide.

 Les applications d'entreprise doivent être conçues, construites et produites à


moindre coût, plus rapidement et avec moins de ressources.
 Elles permettent de fournir la logique métier d'une entreprise.

 L'objectif de la plate-forme Java EE est de fournir aux développeurs un


ensemble puissant d'API tout en améliorant les performances des applications
et en réduisant la complexité et en démunissant le temps de développement
des applications.
4 Qu'est-ce que le serveur ?

 Un serveur est un référentiel central où les clients du réseau peuvent accéder


aux données et aux programmes informatiques stockés.

 Il permet de partager des ressources matérielles, des données et logicielles


entre les clients.

 Il admet également de fournir des services partagés pour connecter les


postes de travail et de gérer les ressources réseau.

 Il existe principalement deux types de serveurs : le serveur web et le serveur


d’application
5 Serveur web

 Un serveur Web est un programme informatique ou un ordinateur qui


exécute des applications.

 La principale caractéristique de ce serveur est d'accepter les requêtes


HTTP des clients, puis de renvoyer les réponses HTTP en fournissant la page
Web.

 Le serveur Web est un ordinateur sur lequel le contenu Web est stocké.
Fondamentalement, le serveur Web est utilisé pour héberger des sites Web,
mais il existe également d'autres serveurs Web tels que les jeux, la
messagerie électronique, le FTP, le stockage, etc.
6 Serveurs d’applications
 Un serveur d'applications est une machine qui exécute des applications
d’utilisateurs.

 Le serveur d'applications collabore avec le serveur Web pour renvoyer une


réponse dynamique et personnalisée à une demande de client.

 La requête client peut être constituée de fichiers Java Server Pages (JSP), de
servlets, et de beans entreprise.

 Un serveur d’applications héberge des applications destinées à être utilisées dans


un réseau distribué.

 Il est doté de services transactionnels entre composants, d’équilibrage de charge


ou encore de tolérance aux pannes.
7 Présentation de l'application Web
 Une application Web est accessible à l'aide d'un navigateur Web sur un réseau, tel
qu'Internet ou l'intranet d'une entreprise.

 Les applications Web contiennent des ressources accessibles de nombreux utilisateurs.

 Ces ressources traversent souvent des réseaux ouverts non protégés, comme Internet.

 Dans la plate-forme Java EE, les composants Web fournissent les capacités d'extension
dynamique pour un serveur Web.

 Les composants Web peuvent être des servlets Java ou des pages Java Server Faces
(JSF).

 L'interaction entre un client Web et une application Web est illustrée dans la figure 1.
8 Présentation de l'application Web

Traitement des demandes d'application Web


9 Présentation de l'application Web

Applications à plusieurs niveaux


10 Java EE application distribuée à
plusieurs niveaux
 L’architecture logicielle d’une application Java EE est constituée
des tiers suivants :

 Machine cliente
 Serveur Java EE
 Serveur de la base de données
11 Java EE application distribuée à
plusieurs niveaux
 Les applications Java EE sont généralement considérées comme des
applications à trois niveaux, car elles sont réparties sur trois emplacements :
 les machines clientes, la machine serveur Java EE et la base de données.
 Les applications à trois niveaux qui s'exécutent de cette manière étendent
le modèle client-serveur à deux niveaux standard en plaçant un serveur
d'applications multithread entre l'application cliente et le stockage
principal.
 La plate-forme Java EE étende ces fonctionnalités pour une utilisation dans
les transactions commerciales basées sur l’internet et incluent des éléments
tels que JTA, EJB, JMS, JSF et API Java EE pour la persistance, l’injection de
dépendances, etc.
12 Machine cliente

 Un client Java EE est généralement soit un client Web, soit un client


d'application.
1. Client Web
2. Application cliente
3. Applets
13 Machine cliente
 1 Client Web
 Un client Web est appelé client léger lorsqu’il n'interroge pas les bases de
données, n'exécute pas de règles métier complexes ou ne se connecte
pas d’autres applications.
 Les opérations lourdes d’un client Web sont chargées dans des
composants d'entreprise qui s'exécutent sur un serveur Java EE, où elles
peuvent tirer parti de la sécurité, de la vitesse, des services et de la
fiabilité des technologies Java EE côté serveur.
 Un client Web se compose de deux parties :
Un navigateur Web, qui rend les pages reçues du serveur.
Des pages Web dynamiques contenant divers types de langage de
balisage (HTML, XML, etc.), qui sont générés par des composants
Web exécutés dans le niveau Web.
14 Machine cliente

 2 Application cliente
 Une application cliente permet aux utilisateurs de gérer des tâches qui
nécessitent une interface utilisateur graphique (GUI) plus riche que celle
fournie par un langage de balisage.
 Cette application est créée à partir de l'API Swing ou Abstract Window Toolkit
(AWT).
 Une application cliente s'exécute sur une machine cliente.
 Elle peut établir une communication avec une servlet exécutée dans le
niveau Web en utilisant le protocole de connexion HTTP.
 Les clients d'application accèdent directement aux beans métier exécutés
dans le niveau métier.
 Les clients d’applications développées avec des langages autres que Java
peuvent interagir avec les serveurs Java EE.
15 Machine cliente

 3 Applets
 Un applet est une petite application cliente écrite en langage Java.
 Il s'exécute dans une machine virtuelle Java installée dans le navigateur
Web.
 Un applet Java peut fonctionner dans un navigateur web installé sur une
machine virtuelle Java (JVM).
 Les applets utilisent des API Swing pour fournir aux utilisateurs des
interfaces puissantes.
16 Serveur Java EE

 Un serveur d’application Java est une implémentation de la spécification


Java EE.
 Il permet de prendre en charge toutes les fonctionnalités étendues de la
plate-forme Java standard (Java SE) pour une utilisation dans les
transactions commerciales.
 Java EE inclue des éléments tels que EJB, JTA, JSF, JMS, et des API pour la
persistance de session, l’injection de dépendances, etc.
 L'infrastructure Java EE est partitionnée en domaines logiques appelés
conteneurs.
17 Serveur Java EE

 Les conteneurs sont l'interface entre un composant et la fonctionnalité de


bas niveau spécifique à la plate-forme qui prend en charge les
composants.
 Chaque conteneur a un rôle spécifique et il améliore la portabilité et il
masque la complexité technique.
 La plate forme Java EE dispose quatre conteneurs :
 le conteneur d'applet
 le conteneur d’application cliente
 le conteneur Web
 le conteneur EJB.
18 Serveur Java EE
 Un conteneur prend en charge un ensemble d'API et offre des services aux composants. :
 Le service de sécurité dans la plate forme Java EE permet de configurer les
composants d'entreprise bean ou Web afin qu'aux utilisateurs autorisés ont l’accès aux
ressources systèmes
 La gestion des transactions dans la plate Java EE permet de spécifier les relations entre
les méthodes qui constituent une seule transaction afin que toutes les méthodes d'une
transaction soient traitées comme une seule unité.
 Les services de recherche JNDI permettent aux composants d'application d’accéder à
plusieurs services qui ont une interface unifiée de nommage et d'annuaire dans
l'entreprise.
 La montée en charge : le conteneur est responsable de la bonne utilisation et du
recyclage des ressources (mémoire, connexion SGBD, etc.).
 Le modèle de connectivité à distance Java EE gère les communications de bas niveau
entre les clients et les entreprises beans.
19 Serveur Java EE
 Le conteneur gère d’autres services non configurables, tels que les cycles de vie
des servlets et des entreprises beans, la persistance des données, les ressources
de connexion à la base de données, et l'accès aux API de la plate-forme Java
EE. Serveur Java EE dispose de deux conteneurs : le conteneur Web et EJB.
 Alors que les conteneurs Web et EJB s'exécutent dans le serveur d'applications
(au niveau intermédiaire), le conteneur client d'application s'exécute
généralement dans un environnement Java SE (au niveau client) et le conteneur
d'applet s'exécute généralement dans un navigateur Web.
20 Serveur Java EE

Conteneurs Java EE
21 Serveur Java EE

 Les conteneurs Java EE s’interviennent sur toutes les communications entre


les composants d'application Java EE pour fournir l'injection de
composants et de ressources.

Vous aimerez peut-être aussi