Sysdeo Formation
    
Technologies
 Vous êtes Accueil > Technologies > EJB
  Nos experts vous guident : les EJB

Découvrez les EJB (Enterprise JavaBeans) et les services associés de Sysdeo.

     
  Choisir les EJB ?

La spécification EJB est une partie importante de J2EE.

Les EJB sont des composants écrits en Java, déployés sur des serveurs et accessibles à distance. Les EJB simplifient la mise en œuvre d'architectures distribuées sophistiquées. Leur utilisation n'est cependant pas aussi aisée que ce que les annonces éditeurs avaient pu initialement laisser croire.

Les spécifications EJB 1.0 et EJB 1.1 définissent deux types de composants. Le serveur d'EJB sur lequel sont déployés ces composants en gère le cycle de vie et prend à sa charge les problèmes de communications réseaux, de transactions et de sécurité. Ces composants sont :

Les EJB Session : ils proposent aux applications clientes un ensemble de services qui peuvent être invoqués à distance.
Les EJB entités : ce sont des composants persistants ; leurs attributs sont généralement stockés dans une base de données relationnelle.

Le serveur d'EJB est responsable de la synchronisation des EJB entités avec la base de données. Il s'acquitte de cette tâche en déclenchant le code nécessaire (JDBC + SQL). Ce code est soit écrit par le développeur (EJB entité BMP - Bean Managed Persistence), soit généré par le serveur (EJB entité CMP - Container Managed Persistence). Les Entity Beans CMP ont l'intérêt fondamental de réduire la quantité de code à écrire. Le gain résultant porte non seulement sur la productivité de l'équipe de développement, mais aussi sur l'évolutivité de l'application : toute modification de la structure des bases de données est très vite prise en compte.

La mise en place d'EJB Session ne pose pas de problème notable. Le cas des EJB entités est plus délicat : tout mauvais choix conceptuel entraîne inévitablement un impact désastreux sur les performances de l'application réalisée (notamment avec les EJB entités CMP).

Lors de leurs missions de définition d'architecture, les équipes Sysdeo étudient consciencieusement, en fonction du contexte de chaque client, la pertinence du choix des EJB. Si l'option d'utiliser les EJB est retenue, Sysdeo forme, conseille et accompagne les équipes client dans la mise en œuvre d'une architecture adaptée, les aidant à éviter les pièges les plus classiques comme les plus insidieux.

Lorsque les équipes de nos clients débutent dans le monde J2EE, nous leur recommandons bien souvent de ne pas s'attaquer immédiatement aux développements à base d'EJB. Nous préférons, dans cette situation, les guider dans des développements qui restent ouvert à une future évolution vers les EJB.

    Plus d'informations, contactez notre directeur technique :

 
  Les EJB 2.0

La spécification EJB 2.0 (juillet 2001) est une évolution essentielle. Elle introduit les nouveautés suivantes :

Amélioration des EJB entités CMP. Avec les spécifications 1.0 et 1.1, les possibilités de mapping (correspondance entre les attributs des composants et les données relationnelles) étaient très réduites et rendaient difficile la généralisation des EJB entités CMP. La spécification 2.0 permet de définir des mappings complexes en introduisant la gestion des relations entre composants. Cette spécification définit par ailleurs un langage de requêtes (EJB QL) qui permet de définir des requêtes complexes, tout en garantissant leur portabilité (décorrélation entre serveur d'EJB et base de données utilisée).
Définition de la notion d'interface locale. Ce mécanisme permet aux serveurs d'EJB d'optimiser les communications entre EJB s'exécutant dans une même machine virtuelle.
Ajout d'un nouveau type de composants, les EJB Messages, permettant d'intégrer facilement les EJB dans une architecture utilisant des middlewares orientés message (tels que MQSeries).

La spécification EJB 2.0 va permettre une véritable généralisation des EJB. Cependant, il est dès aujourd'hui possible de bénéficier des apports de cette spécification en s'appuyant sur le serveur WebLogic 6.1 ou la version préliminaire de WebSphere 5.0 (WebSphere Technology for Developer).

     
  Sysdeo et les EJB

Un peu d'histoire...

Les équipes Sysdeo travaillent depuis plusieurs années sur les architectures à base d'objets distribués.

Dès 1994, Sysdeo était le distributeur pour la France de HP Distributed Smalltalk, le premier ORB CORBA 2.0. Les équipes Sysdeo ont ensuite transposé cette expérience vers le monde Java avec l'ORB Visibroker for Java.

L'expérience des équipes Sysdeo dans les architectures CORBA leur à permis de comprendre très vite le potentiel des serveurs d'applications. En 1997, Sysdeo est devenu partenaire de NetDynamics (racheté en 1999 par Sun), puis en 1998 partenaire d'IBM pour WebSphere et, enfin, en 2001 partenaire de BEA pour WebLogic.

Les équipes Sysdeo ont commencé à étudier les EJB dès 1997 (version 0.9). Depuis 1999, elles participent à des projets avec mise en œuvre d'EJB.

Sysdeo propose également plusieurs formations traitant de ce sujet.

     
  Nos formations EJB

La réussite d'un projet Java passe par une formation réussie de vos équipes. Nous proposons des formations aux EJB depuis 1999. Au cours de ces formations, nous nous attachons à ce que chaque stagiaire apprenne à exploiter au mieux les spécificités de cette technologie.

   EWL - Développement des EJB avec WebLogic
   EOS - Développement des EJB en Open Source avec Eclipse
   EVA - Développement des EJB avec VisualAge / WebSphere
   EWS - Développement des EJB avec WSAD

     
  Liens sur le sujet

WebLogic 6.1 :
http://www.bea.com/products/weblogic/server/index.shtml
WebSphere v5 Technology for developers :
downloads/wstechnology_tech_preview.html
Livre gratuit sur les EJB 2.0 (en anglais) :
http://www.theserverside.com/books/masteringEJB/index.jsp
WebSphere 4.02, document sur la nouvelle fonctionnalité de verrouillage optimiste :


     
service services nouvelles technologies méthodologie processus de développement portail conseil architecture architecte administration framework frameworks objet design pattern design patterns patron de conception modèle de conception composants composants réutilisables réutilisation plateforme J2EE plate-forme J2EE serveurs d'applications mise en oeuvre mise-en-oeuvre maîtrise d'oeuvre maitrise d'oeuvre maîtrise d'ouvrage maitrise d'ouvrage gestion de projets gestion de projet J2EE connecteurs connecteur connecteurs CICS connecteur CICS CICS connectors applications web évaluer audit auditer normes outil outils adapter adaptation intégrer intégration intégration de l'existant migrer migration java j2ee Java2 Entreprise Edition Java 2 Entreprise Edition web mvc mvc2 mvcII JMS Java Messaging Service Java Message Service JCA Java Connector Architecture EAI Entreprise Application Integration UML EJB Entreprise JavaBeans Entreprise Java Beans Entreprise JavaBean Entreprise Java Bean JSP taglibs taglib servlet servlets Apache Tomcat Jakarta Struts Struts eclipse eclipse2 websphere wsad wsad4 wsad4.0 wsad5.0 websphere studio application developper wsed wsed5.0 websphere studio entreprise developper wssd websphere studio site developper websphere studio site developper advanced wsad-ie wsadie websphere studio application developer integration edition websphere studio was was5 was5.0 was4 was4.0 was3.5