Développement
des applications web
     avec J2EE

    Réalisé par:
  Jihed DGHAIES
   Copyright club CFEM ©2010




            Introduction à J2EE
Programme


 1   Spécification J2EE

 2   Architecture

 3   Services

 4   Serveurs

 5
 3   Livrables


                          2/14
Spécification JEE


 J2EE (Java 2 Platform, Enterprise Edition) est une
  spécification Java de Sun destinée particulièrement aux
  applications d’entreprise.

 Dans ce but, toute implémentation de cette spécification
  contient un ensemble d’extensions au framework Java
  standard (J2SE).

 Cette spécification détaille les droits et devoirs d’un
  serveur d’application J2EE, les services fournis par tout
  serveur certifié J2EE, détaille les différents rôles dans
  un projet J2EE…


                                                              3/14
Architecture




               4/14
Services

 La plateforme propose des services offrant un certain nombre de
   fonctionnalités au travers d’API.

 Les API présentent l’avantage d’être faciles à prendre en main.
   Elles permettent de cacher la complexité d’accès aux ressources
   et donc de gagner considérablement du temps.

 Les développeurs peuvent ainsi consacrer plus de temps aux
   aspects « métier ».

 Il existe deux types de services : des services d’infrastructure et
   des services de communication.


                                                                    5/14
Services d’Infrastructure


       Nom de l’API                                     Description
JDBC    -     Java    Database API d’accès aux bases de données. Son utilisation diminue le
Connectivity                    nombre de lignes de code à écrire. De plus, les accès peuvent
                                être optimisés à l’aide des pools de connexions fournis par
                                les serveurs d’application.

JNDI                            API d'accès aux services de nommage et aux annuaires
                                d'entreprises (DNS, NIS, LDAP, …).

JTA / JTS :                     API définissant des interfaces standards avec un gestionnaire
Java Transaction Api / Java de transactions.
Transaction Services
JCA     (J2EE        Connector API de connexion au Système d'Information de l'entreprise
Architecture)                   (ERP…).

JMX    (Java     Management API permettant de développer des applications WEB de
eXtension)                      supervision d'applications.




                                                                                                6/14
Services de communication


       Nom de l’API                                  Description
JAAS (Java Authentification and API de gestion de l'authentification et des droits
Authorization Service)          d'accès.
RMI        (Remote       Method API permettant la communication synchrone entre
Invocation)                     objets.
Web Services                    permettent de « partager » un ensemble de méthodes
                                qui pourront être appelées à distance. Cette technologie
                                utilise XML, ce qui permet de l’employer avec n’importe
                                quel langage et n’importe quelle plateforme.


JMS (Java Message Service)      API fournit des fonctionnalités de communication
                                asynchrone (appelées MOM pour Middleware Object
                                Message) entre applications.

JavaMail                        API permettant l'envoi de courrier électronique.




                                                                                           7/14
Les Serveurs


        Les serveurs d’applications J2EE permettent de développer
    très rapidement des applications complexes capables de
    supporter plusieurs milliers de transactions par secondes et
    plusieurs centaines de milliers d’utilisateurs.

        En effet, avec J2EE quasiment tout le code technique d’une
    application est géré par le serveur d'applications.

        Il est même possible de choisir une implémentation différente
    pour chaque service.




                                                                     8/14
Les Serveurs



              Implémentation de référence réalisé par Sun
              Microsystem



Serveurs certifiés




Serveurs non certifiés




                                                            9/14
Livrables




Les livrables sont déployées dans un serveur d’application J2EE
(conteneur Web + conteneur EJB) ou dans un simple conteneur
web (moteur de servlet/JSP comme Tomcat).
                                                                  10/14
Livraison EAR
    Utile dès que l’application est complexe, impliquant des
      services d’entreprise ( Sécurité, communication multi-serveurs,
      Base de données, Reporting, ...).




Le fichier EAR doit être déployé dans un serveur d’application J2EE

                                                                      11/14
Livraison war 1/2

 La plupart des applications J2EE (70-80%) sont livrées dans un
  module WAR, contenant les écrans de l’applications, les composants
  d’accès aux données ainsi que des composants métiers.

ce livrable contient :
 Ecrans de l’application (Pages (X)HTML, JSP), Images de
   l’application , Eléments du graphisme (Feuilles de style CSS, XSL,
   Tld) , Classes Java métier (JavaBean) ou d’accés aux données,
    Fichier de configuration web.xml

 Le fichier WAR peut être déployé dans un serveur d’application J2EE
  ou dans un simple moteur de servlet comme Tomcat.



                                                                 12/14
Livraison war 2/2




                    13/14
Livraison JAR/EJB



 Les EJB (Enterprise JavaBean) sont des composants java
   métiers évoluant dans le conteneur EJB d’un serveur
   d’applications J2EE.

 Un EJB est livré sous forme de .jar indépendant ou à l’intérieur
   d’une livraison globale .ear




                                                                 14/14

1 Introduction

  • 1.
    Développement des applications web avec J2EE Réalisé par: Jihed DGHAIES Copyright club CFEM ©2010 Introduction à J2EE
  • 2.
    Programme 1 Spécification J2EE 2 Architecture 3 Services 4 Serveurs 5 3 Livrables 2/14
  • 3.
    Spécification JEE  J2EE(Java 2 Platform, Enterprise Edition) est une spécification Java de Sun destinée particulièrement aux applications d’entreprise.  Dans ce but, toute implémentation de cette spécification contient un ensemble d’extensions au framework Java standard (J2SE).  Cette spécification détaille les droits et devoirs d’un serveur d’application J2EE, les services fournis par tout serveur certifié J2EE, détaille les différents rôles dans un projet J2EE… 3/14
  • 4.
  • 5.
    Services  La plateformepropose des services offrant un certain nombre de fonctionnalités au travers d’API.  Les API présentent l’avantage d’être faciles à prendre en main. Elles permettent de cacher la complexité d’accès aux ressources et donc de gagner considérablement du temps.  Les développeurs peuvent ainsi consacrer plus de temps aux aspects « métier ».  Il existe deux types de services : des services d’infrastructure et des services de communication. 5/14
  • 6.
    Services d’Infrastructure Nom de l’API Description JDBC - Java Database API d’accès aux bases de données. Son utilisation diminue le Connectivity nombre de lignes de code à écrire. De plus, les accès peuvent être optimisés à l’aide des pools de connexions fournis par les serveurs d’application. JNDI API d'accès aux services de nommage et aux annuaires d'entreprises (DNS, NIS, LDAP, …). JTA / JTS : API définissant des interfaces standards avec un gestionnaire Java Transaction Api / Java de transactions. Transaction Services JCA (J2EE Connector API de connexion au Système d'Information de l'entreprise Architecture) (ERP…). JMX (Java Management API permettant de développer des applications WEB de eXtension) supervision d'applications. 6/14
  • 7.
    Services de communication Nom de l’API Description JAAS (Java Authentification and API de gestion de l'authentification et des droits Authorization Service) d'accès. RMI (Remote Method API permettant la communication synchrone entre Invocation) objets. Web Services permettent de « partager » un ensemble de méthodes qui pourront être appelées à distance. Cette technologie utilise XML, ce qui permet de l’employer avec n’importe quel langage et n’importe quelle plateforme. JMS (Java Message Service) API fournit des fonctionnalités de communication asynchrone (appelées MOM pour Middleware Object Message) entre applications. JavaMail API permettant l'envoi de courrier électronique. 7/14
  • 8.
    Les Serveurs  Les serveurs d’applications J2EE permettent de développer très rapidement des applications complexes capables de supporter plusieurs milliers de transactions par secondes et plusieurs centaines de milliers d’utilisateurs.  En effet, avec J2EE quasiment tout le code technique d’une application est géré par le serveur d'applications.  Il est même possible de choisir une implémentation différente pour chaque service. 8/14
  • 9.
    Les Serveurs Implémentation de référence réalisé par Sun Microsystem Serveurs certifiés Serveurs non certifiés 9/14
  • 10.
    Livrables Les livrables sontdéployées dans un serveur d’application J2EE (conteneur Web + conteneur EJB) ou dans un simple conteneur web (moteur de servlet/JSP comme Tomcat). 10/14
  • 11.
    Livraison EAR  Utile dès que l’application est complexe, impliquant des services d’entreprise ( Sécurité, communication multi-serveurs, Base de données, Reporting, ...). Le fichier EAR doit être déployé dans un serveur d’application J2EE 11/14
  • 12.
    Livraison war 1/2 La plupart des applications J2EE (70-80%) sont livrées dans un module WAR, contenant les écrans de l’applications, les composants d’accès aux données ainsi que des composants métiers. ce livrable contient :  Ecrans de l’application (Pages (X)HTML, JSP), Images de l’application , Eléments du graphisme (Feuilles de style CSS, XSL, Tld) , Classes Java métier (JavaBean) ou d’accés aux données, Fichier de configuration web.xml  Le fichier WAR peut être déployé dans un serveur d’application J2EE ou dans un simple moteur de servlet comme Tomcat. 12/14
  • 13.
  • 14.
    Livraison JAR/EJB  LesEJB (Enterprise JavaBean) sont des composants java métiers évoluant dans le conteneur EJB d’un serveur d’applications J2EE.  Un EJB est livré sous forme de .jar indépendant ou à l’intérieur d’une livraison globale .ear 14/14