février
2006
Le portail SDN nous présente quelques une des nouveautés des JSP 2.1 de Java EE 5 : Web Tier to Go With Java EE 5: Summary of New Features in JSP 2.1 Technology.
On peut y lire entre autre que le thème principale de cette version est la facilité de développement, en incluant plusieurs technologies tels que la Java Standard Tag Library (JSTL) ou les Java Server Faces (JSF), mais également en utilisant les nouveautés de Java SE 5…
Les Expression Language unifiées
La première version des JSF a été conçus pour fonctionner sur des JSP 1.2 (J2EE 1.3) afin de toucher la plus grande cible possible.
Toutefois, avec J2EE 1.4, la gestion des EL a été intégré dans le moteur des JSP 2.0, et cela implique dans certains cas des problèmes de compatibilité avec les EL de JSF.
La gestion des EL a donc été unifié afin de permettre une meilleure intégration entre les JSP 2.1 et les JSF 1.2, ce qui permettra :
- D’utiliser les ‘Deferred expressions’ afin d’évaluer les expressions à différents moments du cycle de vie de la page, et non plus seulement lorsque la page est générée.
- De modifier les données de l’objet représenté par une expression.
- De définir des ‘Method expressions’, qui pourront être utilisées pour gérer des évènements sur les composants des JSF.
- D’utiliser son propre mécanisme de résolution des EL.
Pour plus d’information sur ces ‘unified EL’, je vous suggère de lire l’article ‘Unified Expression Language‘ sur SDN, et pour plus de détail sur les EL des JSP 2.0, mon tutoriel : Présentation des Expressions Languages.
L’injection des ressources
Puisque Java EE 5.0 sera basé sur Java SE 5.0, cela permet d’utiliser les Annotations pour injecter des ressources gérées par le serveur d’application directement dans le code. Cela permettra de simplifier le code en ‘supprimant’ des éléments rébarbatifs.
Par exemple, pour récupérer un DataSource, il faut actuellement passé par JNI :
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/myDB");
Alors qu’il suffira désormais d’utiliser une simple annotation :
@Resource(name="jdbc/myDB")
javax.sql.DataSource myDB;
Et pour ceux qui ignoreraient encore ce que sont les annotations : Présentation des Annotations de Java 5.0.
La suppression des lignes blanches (enfin!)
Les pages JSP ont un petit défaut qui fait que les pages générées comportent un grand nombre de lignes vides où remplit uniquement de caractères blancs, provoqué par les différentes directives et taglibs de la page. Si cela n’a aucune incidence sur l’interprétation de la page par un navigateur, cela rend le code généré plus lourd et plus difficile à relire.
Il sera désormais possible de supprimer automatiquement toutes ces lignes vides grâce à une simple propriétés (a noter toutefois qu’une fonctionnalité similaire était déjà implémenté dans certains serveurs d’applications).
Pour finir je vous rappelle que le projet GlassFish propose un serveur d’application opensource qui implémente les nouveauté de Java EE 5…
1 Commentaire + Ajouter un commentaire
Tutoriels
Discussions
- L'apparition du mot-clé const est-il prévu dans une version à venir du JDK?
- [ fuite ] memoire
- jre 1.5, tomcat 6.0 et multi processeurs
- [REFLEXION] Connaitre toutes les classes qui implémentent une interface
- Définition exacte de @Override
- Classes, méthodes private
- Recuperation du nom des parametres
- Possibilité d'accéder au type générique en runtime
- Difference de performances Unix/Windows d'un programme?
Note, les lignes blanches peuvent etres désastreuses parfois.
Ici j’ai un probleme, j’ai fait un tags qui est une surcouche de fmt:message, et que j’utilise parfois des des boutons..
Ca fait mal les lignes blanches ds le texte d’un bouton sous firefox/ie