Il y a 14 ans -
Temps de lecture 9 minutes
Revue de Presse Xebia
La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.
Actualité éditeurs / SSII
- Terracotta a faim d’Open Source : acquisition de Quartz
- JDK 7, JEE 6, et Maven 3.0 : les annonces de Devoxx
RIA
Le coin de la technique
Evènements de notre communauté en France et à l’étranger
Actualité éditeurs / SSII
Terracotta a faim d’Open Source : acquisition de Quartz
Terracotta a annoncé cette semaine l’acquisition de Quartz, le scheduler open source le plus connu est le mieux intégré du marché. Cette acquisition est l’exacte copie de celle opérée cet été avec Ehcache. Tout comme ehCache, Quartz est un projet open source, largement utilisé et bien intégré avec la plupart des solutions stars de leur secteur … et porté par un seul homme (James House). Cible idéale pour Terracotta ? Probablement. Mais il se pose toujours la question suivante : comment Terracotta compte t’il rentabiliser cette acquisition, quand on sait a quel point la monétisation d’un projet open source est difficile. Quoi qu’il arrive, d’ici la prochaine acquisition, Terracotta touche, par ce biais, une communauté de plus en plus large. Cela sera-t-il suffisant pour séduire un éventuel racheteur ?
D’autre part, comme le signale Alex Miller, Quartz c’est :
- Un nouveau site web.
- Un nouveau gestionnaire de sources.
- Un nouveau gestionnaire d’anomalies.
- Un nouveau forum.
- Mais toujours la même licence, Apache 2.
JDK 7, JEE 6, et Maven 3.0 : les annonces de Devoxx
La conférence Devoxx ayant eu lieu la semaine dernière a été l’occasion de plusieurs annonces importantes qui ont rapidement fait le tour de la blogosphère.
JDK 7 avec les closures, mais retardé à nouveau
C’est surement l’annonce qui à fait le plus de bruit. Elle s’est répandue comme une trainée de poudre tant elle était inattendue. Lors d’une présentation en apparence sans surprise sur les nouveautés du JDK 7, Mark Reinhold explique que le temps est venu pour Java de supporter les closures. Afin de permettre leur implémentation, la finalisation du JDK 7 est repoussée à septembre 2010. Trois nouveaux milestones sont donc ajoutés au calendrier initial avec une finalisation des fonctionnalités (features complete) prévue pour Juin 2010. Ce nouveau délai permet donc à l’équipe du JDK de travailler sereinement sur la finalisation de Jigsaw, d’implémenter les closures, et devrait vraisemblablement permettre également l’inclusion du multi-catch pour les exceptions.
En fait ce délai semble laisser la possibilité à de nombreuses autres fonctionnalités et spécifications qui avaient été mises de coté de prétendre de nouveau intégrer le JDK 7. On peut ainsi imaginer :
- JMX 2, qui avait été repoussé au JDK 8
- La JSR-310 (Date and Time API) qui avait connu des difficultés par manque de contributions et n’avait finalement pas été incluse à la liste finale des fonctionnalités du JDK 7
- La JSR-296 (Swing Application Framework) dont le retrait du JDK 7 avait été annoncé cet été
- Le support des propriétés
Questionné à Devoxx sur l’étendue des fonctionnalités pouvant être concernées par une potentielle inclusion, Mark Reinhold ne ferme la porte à aucune hypothèse. Il explique ainsi qu’il n’a pas eu l’occasion de voir de proposal pour les propriétés qui lui semblait satisfaisante jusqu’à présent mais n’exclue pas une telle possibilité d’ici la finalisation des fonctionnalités du JDK 7.
JEE 6 finalisé en décembre
Lors du keynote du premier jour des conférences, Roberto Chinnici (Spec lead JEE 6) a annoncé la finalisation de l’ensemble des spécifications JEE 6 ainsi que de l’implémentation de référence associée (Glassfish V3) pour le 10 décembre 2009.
Cette nouvelle intervient alors que JEE 6 a été très bien accueilli par le public à Devoxx comme il l’a été maintes fois répété dans le dernier épisode des Cast Codeurs.
Maven 3.0 finalisé en Janvier
Cette annonce est passée plus inaperçue parmi l’actualité de Sun. Pourtant Jason van Zyl, lors de sa présentation des nouveautés de Maven 3.0, a annoncé une finalisation de la nouvelle version de son outil de build pour la fin janvier 2010.
Cette nouvelle version apportera le support des builds multithreadés ainsi qu’un environnement de base pour les extensions très intéressantes que sont Polyglot Maven et Maven Shell.
Nous publierons rapidement un article plus détaillé sur l’ensemble des nouveautés à venir sur Maven 3.x.
RIA
GWT version 2.0 RC1
Une nouvelle version majeure du RIA de Google, GWT, sort en version 2.0 RC 1. Cependant, aucune date de sortie n’est encore annoncée.
Cette version s’accompagne d’un plugin pour Eclipse, nommé Google Plugin for Eclipse 1.2 RC1, dont l’on recommande vivement la mise à jour.
Parmi les nouveautés, on peut citer:
- Utilisation du Development Mode (anciennement appelé Hosted Mode) dans le navigateur de votre choix via un plugin.
- Possibilité de fragmenter le code JavaScript généré en plusieurs morceaux en utilisant GWT.runAsync() va permettre d’accélérer considérablement les temps de chargement.
- Story Of Your Compile (SOYC) génère un rapport sur le processus de compilation et permet d’avoir une meilleure vision du code généré.
- Facilitation de la création d’IHM par déclaration avec Ui Binder.
- Apparition d’un ClientBundle, similaire au ImageBundle, qui permet la généralisation du sprinting à d’autres formats les fichiers textes, css, etc.
- Utilisation de HtmlUnit pour les tests unitaires, qui permet maintenant de débugger directement dans le débuggeur Java.
Les nouveautés sont donc nombreuses et apportent un réel gain de productivité.
Le combat auquel se livrent actuellement les RIA est loin d’être terminé…
Le coin de la technique
OWASP Security Top Ten, la cuvée 2010 est arrivée
Après le Beaujolais Nouveau et le calendrier des pompiers, c’est au tour de l’OWASP de faire son annonce avec la mouture 2010 de son « Security Top Ten ». En attendant de rédiger un billet complet sur ces failles et leur prévention en Java, voici un lien vers une présentation que nous avions fait pour une formation interne et la liste 2010 avec une présentation très succincte des parades dont nous disposons en Java :
A1 – Injection : injection sql, hibernate ql, jpa ql, http, etc.
Utiliser des prepared statements, les paramètres de commons http, etc.
A2 – Cross Site Scripting (XSS)
Utiliser JSR 303 Bean Validation pour valider les données entrantes et escaper les données sortantes avec JSTL ou un équivalent.
A3 – Failles d’Authentification et de gestion de Gestion de Session
Utiliser Spring Security ou les mécanismes du moteur de servlet.
A4 – Référence Directe Non Sécurisée aux Objets de données
Revalider tous les ID provenants des requêtes HTTP ou utiliser un aliasing par random (cf. org.owasp.esapi.AccessReferenceMap).
A5 – Cross Site Request Forgery (CSRF)
Protéger les invocations d’URL par le contrôle d’un nombre aléatoire généré côté serveur. En cas de risque majeur, utiliser un framework Web de description de flow (Spring Web Flow, JBoss Seam, etc).
A6 – Mauvaise configuration de sécurité (Nouveau)
Utiliser les installation standard des systèmes d’exploitation et des middlewares, restreindre les droits des utilisateurs unix, etc.
A7 – Mauvaise protection des URL
Utiliser des mécanismes de sécurité déclarative par URL ou par annotation sur les beans controlleurs et de service.
A8 – Utilisation de redirects et forwards non controlés (nouveau)
Ne pas construire l’url de redirection ou de forward avec des données saisies par l’internaute. Figer les valeurs possibles de redirection dans le code ou dans des fichiers de configuration.
A9 – Failles des systèmes de stockages encryptés
Ne jamais stocker un mot de passe en clair, éviter de stocker des informations sensibles comme les numéros de carte bleue, . Si c’est finalement nécessaire, mettre en place un système de stockage dédié avec une gestion très attentive.
Documenter dans les configurations de logging (e.g. log4j.properties) les loggers à ne pas activer si des informations sensibles ne doivent pas sortir dans les logs (e.g. couche de binding des frameworks web).
A10 – Protection insuffisante des canaux de communication
Ne pas réinventer de canal de transport sécurisé, utiliser SSL quand c’est possible ; sinon, regarder WS-Security même s’il est très couteux à mettre en œuvre (debugging, etc).
Que devient Spring Rich Client ?
Spring Rich Client est un framework applicatif basé sur Spring. Il permet de créer des applications clients lourds plus facilement qu’en utilisant l’environnement Swing de base.
La promesse est séduisante, toutefois le projet initié en 2004 ne s’est vu finalisé que 4 ans plus tard, en mars 2008. Dès lors certains doutes planent quant à la santé de cette communauté.
Lieven Doclo, leader du projet, en a présenté les fonctionnalités lors d’un BOF à Devoxx. Ce fut également l’occasion d’un certain nombre de questions quant à la santé et au positionnement de ce projet méconnu :
- Bien qu’il soit directement référencé au sein du portfolio de SpringSource, l’éditeur n’investit pas dans ce projet. On notera d’ailleurs que Lieven Doclo n’est pas employé par SpringSource mais consultant Java externe.
- Le projet souhaite se positionner face à Eclipse RCP et NetBeans RCP en mettant en avant l’obligation d’utiliser SWT pour le premier et le manque de perspectives pour le second du fait des récentes déclarations d’Oracle.
- Les évolutions lentes du projet s’expliquent par la taille réduite de l’équipe. Lieven Doclo appelle d’ailleurs les volontaires à le rejoindre.
Si l’utilisation du framework Spring pour l’assemblage des composants des applications Spring RC est attirante car elle permet de reproduire les paradigmes de programmation utilisés pour le développement d’applications Web, Spring Rich Client peine encore à convaincre face aux poids lourds que sont les solutions d’Eclipse et de Netbeans. Il pourra toutefois intéresser les équipes souhaitant réutiliser des composants Spring existants.
Evènements de notre communauté en France et à l’étranger
Devoxx 2009
La semaine dernière se tenait l’édition 2009 de Devoxx à Anvers. Retrouvez nos premiers billets sur cette semaine de conférence :
- Devoxx – Jour 1 – Adobe University
- Devoxx – Jour 1 – Applications robustes avec Amazon EC2
- Devoxx – Jour 1 – Kanban in action
- Devoxx – Jour 1 – JSF 2
- Devoxx – Jour 1 – NoSQL avec HBase
- Devoxx – Jour 2 – Google App Engine
- Devoxx – Jour 2 – Les effets avec Flex 4
- Devoxx – Jour 2 – Hibernate Search
- Devoxx – Jour 2 – Java FX The developer guide
- Devoxx – Jour 2 – SOA en pratique
- Devoxx – Jour 2 – Scala Actors
Commentaire
3 réponses pour " Revue de Presse Xebia "
Published by Moncef , Il y a 14 ans
Bonjour, pourriez vous mettre la présentation OWASP Top Ten au format Powerpoint pour téléchargement sur un système Windows (sur slideshare, elle n’est disponible qu’au format keynote d’Apple) ? Merci beaucoup.
Published by Cyrille Le Clerc , Il y a 14 ans
Bonjour Moncef,
Autant pour moi, j’ai uploadé sur slideshare la version PDF qui est lisible sur toutes les plateformes. L’URL est inchangée :
http://www.slideshare.net/XebiaFrance/xebia-knowledge-exchange-owasp-top-ten-2565878
Cyrille (Xebia)
Published by Dominique De Vito , Il y a 14 ans
Hum, ce serait particulièrement intéressant si Spring Rich Client utilisait la même définition XML que GWT… Cela pourrait donner ailes au petit poucet Spring RC.