3
Intérêt des composants
Développement plus rapide, plus fiable
Maintenance facilitée
Pas besoin de compétences pointues dans le
domaine métier d’un composant acquis
Industrie du composant logiciel ? Pas encore
vraiment là
Richard Grin Présentation Java EE page 13
Exemples
Composant « métier » pour gérer la paie des
employés
Composant JSF qui affiche une carte « Google
Map » dans l’interface utilisateur Web
Richard Grin Présentation Java EE page 14
Serveur d’application
Logiciel qui sert de structure d’accueil pour les
applications ; il leur fournit des services non
fonctionnels
Les applications Java EE ne peuvent fonctionner
que si elles sont intégrées avec un serveur
d’application qui suit les spécifications Java EE
Plusieurs serveurs d’application Java EE (Payara,
WildFly,…)
GlassFish 4 est l’implémentation de référence de
Java EE 7
Richard Grin Présentation Java EE page 15
Containers
Chaque type de composant Java EE est géré par un
container qui fait partie du serveur d’application : pour
JSF, EJB, CDI, etc.
Un container intercepte les appels aux composants
pour ajouter des services non fonctionnels :
transactions, gestion de la concurrence, cycle de vie
des composants, injection de dépendance,…
Le développeur est ainsi libéré d’une grande charge
de travail !
Richard Grin Présentation Java EE page 16
Exemple d’interception
L’appel d’une méthode d’un EJB est intercepté par
le container EJB qui
démarre une nouvelle transaction, juste avant de
donner la main à la méthode
lance un commit de la transaction à la fin de
l’exécution de la méthode
Présentation Java EE page 17Richard Grin
Configuration d’une application
Pour
s’adapter à la plateforme de déploiement (politique de
sécurité, bases de données installées,…)
faire un choix entre plusieurs possibilités (persistance
des attributs d’un objet, gestion des transactions,…)
Java EE suit la formule « convention plutôt que
configuration » : les pratiques les plus courantes
n’ont pas besoin d’être configurées ; seules les
pratiques inhabituelles doivent être configurées
Configuration par fichiers XML ou annotations
Richard Grin Présentation Java EE page 18