Il y a 14 ans -
Temps de lecture 10 minutes
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
Evènements de notre communauté en France et à l’étranger
Actualité éditeurs / SSII
La fondation Apache et JAX-RS
Une proposal pour l’intégration d’un nouveau projet dans l’Incubator de la fondation Apache vient d’être publiée. Le projet, dont le nom suggéré est Apache Wink, est une implémentation de JAX-RS (JSR-311) dont le but est de simplifier l’implémentation de Web Services Restful. L’équipe est composée de développeurs provenant de HP et d’IBM. Quatre d’entre eux sont contributeurs au projet Axis2. Le code du projet est issu d’un fork de l’implémentation de JAX-RS du projet CXF.
La fondation Apache possède déjà une implémentation de JAX-RS au sein du projet CXF. Le projet Axis2, quant à lui, supporte Rest mais pas JAX-RS. Dans ce contexte, une discussion s’est engagée autour de la légitimité du projet. On retiendra deux interventions notables :
- Daniel Kulp, du projet CXF, intervient assez sèchement, en regrettant que l’équipe du projet Wink n’ait pas cherché à consulter l’équipe CXF sur le sujet. Il souligne par ailleurs le fait que puisque le projet est annoncé comme d’ores et déjà compliant avec le TCK de JAX-RS, il aura probablement du mal à trouver de nouveaux commiteurs.
- Greg Truty, fondateur du projet Wink et affilié IBM, explique qu’IBM utilise Axis2 en tant qu’implémentation JAX-WS et ne peut se permettre de tirer CXF en tant que dépendance pour leur implémentation JAX-RS car il leur faut une librairie indépendante.
L’approbation du projet reste incertaine, mais quel que soit le résultat final, le projet Apache Wink naîtra avec un manque certain de légitimité. Il n’aurait en effet comme seule justification que l’indépendance à CXF et devrait alors se démarquer face aux nombreuses autres implémentations de la JSR qui sont rapidement apparues et dont Jersey et RestEasy sont déjà de dignes représentants.
RIA
Comparatif de framework Ajax
Matt Raible a publié sur son blog les résultats d’un comparatif de frameworks Ajax. La liste des frameworks est assez restreinte : Ext JS, Dojo, YUI et GWT. On peut entre autres regretter l’absence du framework Javascript JQuery. Les résultats de l’analyse peuvent être étendus à d’autres frameworks car la méthode de comparaison est explicitement définie. Cette évaluation repose sur 20 critères : richesse des composants, qualité de la documentation, productivité de développement, etc.
Ce qui est le plus intéressant dans cette étude est la méthode, et la grille d’évaluation avec ses critères. Cette méthode peut aussi être étendue à différents contextes de développement d’applications Web.
On remarque que tous les frameworks reçoivent une bonne note, à l’exception de Ext JS.
Des conseils d’optimisations pour Flex et ActionScript 3
Suite à son article présentant les bonnes pratiques Flex, Sean Moore présente ici quelques conseils d’optimisation pour Flex et ActionScript 3.
Voici quelques conseils intéressants à retenir :
Les optimisations pour ActionScript 3 :
- Au niveau des tableaux (Array) :
- Eviter les new et préférer [] à la place.
- Au niveau du code :
- Utilisation de const pour les constantes,
- Privilégier dans la condition du if l’évènement qui se produit le plus,
- Utiliser des entiers dans les boucles for,
- Privilégier la multiplication plutôt que la division.
- L’auteur nous donne également quelques conseils sur les performances du code ; nous apprenons ainsi que :
- il n’y a pas de différence de performance entre le if et le switch
- la longueur du nom d’une méthode n’a pas d’incidence sur les performances
Les optimisations pour MXML
- Eviter les repeaters sur des données scrollables
- Eviter l’utilisation excessive voire inutile de conteneurs (tels que VBox), cela impacte les performances de l’application
- Lors de l’utilisation de repeaters, mettre la propriété recycleChildren à true pour que les éléments enfants ne soient pas créés à nouveau s’ils existent déjà
- Mettre la propriété creationPolicy à « queued » pour différer la création de conteneur dans le cas de multiples vues.
Bien que certaines informations puissent être applicables à tous les langages, certains points sont spécifiques au langage AS3/MXML, et peuvent rendre une application bien plus performante. Des informations bien utiles et à mettre en pratique sur tous projets Flex.
SOA
Vers l’émergence de Rule-driven process engines ?
Winston Dhanraj vient de terminer une série de deux articles (partie 1 et partie 2) portant sur la convergence des technologies de BPM, en apportant une observation du marché actuel, principalement focalisée sur la séparation entre processus et règles. Il y oppose deux camps :
- La vision traditionnelle, représentée par les poids lourds du marché que sont IBM, Oracle, Microsoft et Tibco, qui se base sur un faible couplage entre le moteur de processus et le moteur de règles (éventuellement apporté par un éditeur tierce).
- Une vision émergente, représentée par Pegasystems et sa solution SmartBPM Suite, qui préconise un moteur unifié de processus et règles (rule-driven process engine), rendant ainsi ces deux composants conscients l’un de l’autre.
Bien que reconnaissant sa plus grande complexité, l’auteur expose clairement son intérêt pour la seconde solution en mettant en avant ses atouts par rapport aux BPMs traditionnels :
- La logique conditionnelle n’a plus à être intégrée au sein du processus (évitant ainsi de produire des processus surchargés) ni déléguée à un moteur de règles externe, forcément non conscient du contexte d’invocation
- Les possibilités du moteur de règles peuvent être pleinement exploitées du fait de l’information contextuelle dont il dispose, évitant ainsi de le transformer en simple tableau de décision
- La transition vers une nouvelle version d’un processus est simplifiée
- Il n’est plus nécessaire de maintenir synchronisés les modèles métiers manipulés par le moteur de processus et de règles
Ce concept de moteur unifié n’était présent jusqu’alors que dans le monde commercial, grâce à l’offre de Pegasystems. Un produit Open Source s’apprête toutefois à changer la donne : JBoss Drools 5 est attendu en version finale dans les semaines à venir (une CR1 étant d’ores et déjà disponible). En effet, alors que Drools se limitait jusqu’alors à un moteur de règles, il évolue pour offrir maintenant un BPM unifié. On notera que la gestion de processus est apportée par un sous-projet nommé Drools Flow et non par jBPM ; Mark Proctor, JBoss Drools Lead, explique ce choix par des points de vue divergents entre les équipes des deux projets, l’équipe jBPM préférant ne pas s’engager sur cette nouvelle vision qu’elle juge trop complexe.
L’arrivée d’un acteur majeur supplémentaire comme JBoss permettra sans nul doute de donner un crédit supplémentaire à cette nouvelle vision du BPM. Toutefois seule une adoption de cette évolution par les poids lourds du marché permettra de la démocratiser.
Le coin de la technique
Sortie de TeamCity 4.5
The Server Side nous informe de la sortie de TeamCity, le serveur d’intégration continue de JetBrains, dans sa version 4.5
Pas de révolution dans cette version mais de nouvelles fonctionnalités font leur apparition (la liste complète est plus que respectable). Parmi les plus intéressantes, on note:
- Une meilleure interface utilisateur,
- Gestion de groupes d’utilisateurs,
- Intégration LDAP,
- Une meilleure intégration avec nos IDEs (Eclipse, Visual Studio et bien sûr IDEA),
- Utilisation des résultats (format XML) de frameworks tels que JUnit, NUnit, Surefire, PMD ou FindBugs,
- Support du framework MONO,
- Assignation d’une responsabilité à un utilisateur,
- Détection de crash JVM…
À noter qu’il est possible que votre agent par défaut soit écrasé comme ça a été le cas chez Developpez.com mais pas de panique au niveau des données (qui ont toutes été récupérées).
Une application à essayer d’urgence, rendez-vous est pris dans la section téléchargement !
Des nouvelles du projet Nebula
Nebula est un projet Eclipse à destination des développeurs Eclipse RCP. Son but est de fournir des composants SWT évolués.
En effet, les composants SWT fournis en standard font le travail mais restent de très bas niveau. Qui n’a jamais essayé de mettre une checkbox éditable dans une cellule de son tableau :-) ? Il est bien sûr tout à fait possible de l’implémenter soi-même, mais l’idéal serait d’avoir un composant tiers qui gère nativement ce genre de fonctionnalités avancées (très appréciables !).
Actuellement tous en incubation, on trouve en téléchargement :
- la galerie (seul composant étiqueté stable),
- le tableau (édition de cellule, colonnes groupées, entêtes multiples…),
- le panel avancé,
- l’accordéon,
- des animations (non officielles).
On note toutefois une communication sur de nouveaux composants, pas encore en téléchargement mais récupérables sur le CVS du projet (Web browser) :
- un calendrier avancé,
- un date/time,
- un accordéon/bouton avancé,
- un texte formaté,
- un diagramme de Gantt.
Et, petite surprise, même si pour l’instant aucune communication n’a été faite, le jira bugzilla du projet semble indiquer l’arrivée possible d’autres composants tels que :
Nebula propose toujours son plugin eclipse d’exemples qui permet de faire un rapide tour d’horizon des composants.
Pour des exemples de code, ça se passe dans la section snippets.
Evènements de notre communauté en France et à l’étranger
SpringOne : Annonces de la première journée
Aujourd’hui se déroulait la première journée de SpringOne Europe à Amsterdam. La conférence a débuté par une keynote théâtrale menée par Rod Johnson en personne. Partant d’un point de départ plutôt piquant : « l’acquisition de Sun par Oracle ! » et d’une phrase quelque peu cinglante « Ce n’est pas avec Oracle que nous pouvons espérer les nouveautés du monde Java » (nous lui laissons la paternité de ce propos peu amène), Rod a annoncé les nouvelles directions stratégiques prises par SpringSource :
- Phase 1, s’enfuir de Java EE !
- Phase 2, améliorer la productivité des développeurs Java.
Différentes annonces ont donc été faites dans ce sens durant cette keynote :
- Sortie de tcServer en GA : SpringSource espère toucher différents publics avec ce serveur : les utilisateurs de serveurs Java EE désirant migrer vers une solution plus simple et moins onéreuse, mais aussi les utilisateurs de Tomcat en recherche de console d’administration.
- Sortie du futur nouveau produit ‘Spring ROO’ (vous pouvez voter pour son nom) que nous avions déjà évoqué à plusieurs reprises. Ce projet, décrit comme le Grails pour code Java, vise à augmenter la productivité des développements en proposant différents mécanismes de génération de code, et une intégration aux outils de développements (Maven2, Eclipse …).
- SpringSource Tool Suite (STS) : Brique indispensable pour tirer la meilleur partie de Spring ROO, STS sera dorénavant diffusé gratuitement. Il contiendra, outre les plugins Spring, Mylyn et autres tutoriaux que nous connaissions déjà, une intégration directe avec la console Spring ROO.
Continuez à suivre Spring One Europe via twitter.
Java EE 6 n’aura plus de secret pour vous …
Antonio Goncalves vient de terminer l’écriture de son livre : Beginning Java EE 6 Platform with GlassFish 3: From Novice to Professional. Celui-ci est en cours de publication et devrait être disponible à la vente fin mai. Antonio, que vous connaissez probablement comme l’un des leaders du ParisJug, est également un membre du JCP et intervient sur les JSR-316 (Java EE 6), JSR-317 (JPA 2.0) et JSR-318 (EJB 3.1).
Félicitions pour ce nouvel ouvrage, nous avons hâte de le lire. Tu vas pouvoir souffler un peu avant Java EE 7 :-).
Pouvons-nous espérer une reprise de ton ancien livre :-) ?
Commentaire
11 réponses pour " Revue de Presse Xebia "
Published by Antonio Goncalves , Il y a 14 ans
Pour ce qui est de Java EE 7, je crois que je laisserai la place aux autres. Pour Java EE 6, je compte organiser une séance dédicace… je vous tiendrai au courant. Et en ce qui concerne Java EE 5 chez Eyrolles, il est plus que jamais d’actualité, et je vais travailler à une 3e édition qui devrait sortir à la fin de l’année ;o)
Published by Erwan Alliaume , Il y a 14 ans
T’as déjà épuisé la seconde édition ? :)
Published by Antonio Goncalves , Il y a 14 ans
J’ai reçu des nouvelles d’Eyrolles, dans qques mois la 2e édition sera effectivement épuisée. Je ne connais pas encore tout à fait les chiffres exactes, mais je ne devrais pas être loin de 4000 copies de Java EE 5. Harry Potter n’a qu’à bien se tenir.
Published by Alexis MP , Il y a 14 ans
Plus ça va, plus Rod mise sur sa réthorique comment argument. C’est pas un signe de sérénité…
Published by Iguane39 , Il y a 14 ans
Pour les notations sur les frameworks AJAX, la « mauvaise » note de ExtJS de 16 par rapport aux « bonnes » notes 17 des autres frameworks est un peu limite dans votre commentaire. Dans ce cas-là on peut considérer que tous les frameworks se valent.
Même si j’ai une préférence pour GWT + GXT. :-)
Published by Marc L , Il y a 14 ans
Bonjour à tous.
Je regrette d’être un peu hors-sujet mais je vois mal sur quel article greffer mon commentaire qui concerne plus le blog et l’expertise Xébia que le contenu de cette page.
J’ai découvert votre blog l’année dernière. Je n’utilise pas Java actuellement et plus depuis un an et demi, les articles comme celui-ci me permettent de rester informé et j’apprécie les articles techniques en particulier, plus universels.
J’ai bien compris que vous étiez des spécialistes Java – « Xebia est un groupe d’experts, exclusivement dédié aux technologies J2EE » – cependant, je me demande comment vous pouvez vous exprimer aussi peu sur les technologies concurrentes, ne serait-ce que pour pouvoir placer les évolutions de Java et ce qui gravite autour de lui dans le monde J2EE dans un contexte ? J’imagine très bien que vous souhaitiez éviter les débats « trollesques », mais néanmoins j’ai fréquemment cette impression que vous ne regardez pas autour de vous – à tord peut-être – et j’ai donc parfois plus de mal à accorder du crédit aux louanges qui sont faites.
Je conviens qu’il faille faire des sacrifices entre la largeur du domaine de veille technologique et sa profondeur, cependant n’y-a-t-il pas ce risque de s’enfermer dans J2EE et finalement de ne plus le connaître ?
J’espère sincèrement que vous comprendrez que je cherche simplement à connaître vos opinions et absolument à pas critiquer votre travail.
Marc
Published by Wadael , Il y a 14 ans
Pour la partie RIA :
Pour ma part, je suis partisan de GWT+SmartGWT, qui restera free et qui apporte des widgets qui manquent cruellement au GWT de base comme les tableaux riches, triables.
Published by Cédric Vidal , Il y a 14 ans
Spring ROO est maintenant disponible en téléchargement ! http://www.springsource.org/roo
Published by Erwan Alliaume , Il y a 14 ans
Merci Cédric.
La publication de ROO n’a donc pas été possible avant le départ le train :)
(cf nos tweets)
Erwan