Il y a 15 ans -
Temps de lecture 7 minutes
Revue de Presse Xebia
La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.
Actualité éditeurs / SSII
Agilité
RIA
SOA
Le coin de la technique
- Tendance : les compétences Spring Framework désormais plus recherchées que celles sur les EJB
- Spring Integration & Spring Module
- EJB 3.1, un concurrent sérieux à Spring Framework ?
- serialVersionUID et gestion de version des services exposés en EJB/RMI
Evènements de notre communauté en France et à l’étranger
Actualité éditeurs / SSII
La virtualisation sous le feux de la rampe
Microsoft a annoncé l’acquisition de Calista Software et entre ainsi dans le monde de la virtualisation, largement dominé par VMware. D’autre part le géant signe un accord avec Citrix. Un marché très convoité. L’argument choc de Microsoft est le coût prohibitif des logiciels vendus par les vendeurs spécialisés.
Dans le même domaine, Quest a racheté VizionCore.
Voir l’article du rachat de Calista sur DABCC.
Voir l’article du rachat de VizionCore sur le Journal du Net.
Agilité
Don’t know what I want, but I know how to get it
Dans cet excellent billet de Jeff Patton, celui-ci évoque la différence, entre autres, des méthodes itératives et incrémentales. Afin d’illustrer ses propos, il effectue un parallèle avec la manière dont un artiste (içi un peintre) conçoit son oeuvre. Une très bonne analyse faite de manière originale, à lire absolument.
RIA
Inside RIA
Un nouveau blog collaboratif (initié par O’Reilly et Adobe) a fait son apparition sur les RIA. Différents points de vues sont abordés, mais on remarquera que la tendance des premiers billets se porte surtout sur Adobe AIR et Flex …
Néanmoins les problématiques sur les concepts RIA sont abordées et n’augurent que du bon pour la suite.
SOA
SOA n’est plus à la mode chez les DSI
Il fallait s’en douter, à force d’être galvaudé, mal utilisé, survendu, le concept SOA s’essouffle.
La preuve : SOA n’est qu’en dixième position dans les priorités des DSI selon un récente étude du Gartner.
voir l’article dans 01.
Le coin de la technique
Tendance : les compétences Spring Framework désormais plus recherchées que celles sur les EJB
Rod Jonhson, le fondateur de Spring Framework, nous apprend dans Spring Overtakes EJB as a Skills Requirement que les compétences sur Spring Framework sont désormais plus recherchées que celles sur les EJB.
Si la précision de la mesure est discutable, en revanche, la tendance est elle sans ambiguïté et corrobore les autres signes de vitalité du framework open source.
On notera par ailleurs que Rod Jonhson, avec la courtoisie qu’on lui connaît, est toujours critique envers les EJB et qu’il ne faut donc pas espérer de convergence à court terme entre Spring Framework et les EJB.
Spring Integration & Spring Module
SpringSource dévoile la première milestone de son framework d’intégration, Spring Integration. Il est maintenant disponible directement sous forme d’archive et la documentation est disponible. Dans le même temps, la société release une implémentation du célèbre framework compatible avec la spécification OSGi, Spring Module . Comme pour la Spring Integration, les archives et la documentation sont disponibles.
EJB 3.1, un concurrent sérieux à Spring Framework ?
Les nouveautés
Reza Raman, membre de JSR 318: Enterprise JavaBeans 3.1, dévoile les nouvelles fonctionnalités des EJB 3.1. Au programme, quelques simplifications et améliorations :
- Suppression des interfaces ejb : les ejb deviennent des POJOs annotés.
- Utilisation des EJBs directement dans le conteneur de servlets (ie le .war) : simplification du packaging et suppression des problématiques de classloaders multiples.
- Support des Web services stateful en exposant des EJB sessions stateful.
- Invocation asynchrone des EJB sessions.
- Description par annotation des options de concurrence d’accès sur les EJB (e.g. »@ConcurrencyAttribute(READ_WRITE_LOCK) » ).
- EJB singleton.
- Notification des évènements de cycle de vie du conteneur (start et stop) pour enfin remplacer l’utilisation du ServletContextListener.
On se souviendra que SpringSource ne fait toujours pas partie de la JSR EJB et qu’il n’y a donc toujours pas de perspectives de convergence de Spring Framework avec les EJBs.
EJB 3.1 reprendra-t-il des parts de marché à Spring Framework ?
On peut en douter quand on voit la vitalité du framework open source :
- Fonctionnalités :
– Spring innove toujours à un rythme soutenu : configuration par annotation et par programmation, assemblage OSGI avec Spring Dynamic Modules, enterprise integration patterns avec Spring Integration, etc.
– EJB 3.1, en comparaison, apporte des nouveautés peu innovantes et fait figure de suiveur. - Communauté :
– Spring Framework suscite autant la bienveillance des éditeurs commerciaux (BEA, IBM, etc) qui supportent officiellement le framework que celle des projets Open Source (Apache, etc) qui sont de plus en plus nombreux à adopter Spring comme socle.
– EJB 3.x de son côté ne sera disponible que dans la prochaine version de Websphere et est rarement un élément clef des socles open source. - Croissance : le succès a une dimension auto-réalisatrice car il conforte les adopteurs potentiels dans leur intérêt ; à l’inverse, une dynamique décroissante risque elle de dissuader les prospects qui privilégieront des alternatives sans risque.
– Les offres d’emplois demandant une compétence Spring Framework connaissent une croissance ferme et continue depuis plus de deux ans et viennent de dépasser les offres demandant une compétence EJB qui elle sont aux mieux stables (sources indeed.com job trends).
serialVersionUID et gestion de version des services exposés en EJB/RMI
Nicolas Martignole explique le rôle et le fonctionnement de l’attribut serialVersionUID dans serialVersionUID mythes et légendes.
C’est l’occasion de souligner l’importance de la gestion de version des services dans un projet d’intégration et de rappeler quelques règles pour gérer la version de services exposés en EJB/RMI :
- L’utilisation d’objets Serializable est souvent associée à la programmation distribuée avec des EJB ou directement en RMI.
- La gestion des versions des services en programmation distribuée EJB/RMI est délicate car la version d’un service est composition des serialVersionUID (générés par la JVM ou affectés par les développeurs) de tous les objets impliqués dans le service [1].
- Un des grands enjeux des projets de programmation distribuée est la gestion de la compatibilité des versions des services entre les client et les serveurs. Si les montées de versions sont mal gérées, la productivité des équipes d’intégration et de recette s’effondre à cause d’innombrables régressions liées à des incompatibilités de type « CORBA.MARSHAL ... IOException: Mismatched serialization UIDs«
- Pour maîtriser ces risques de rupture de compatibilité, il est important de former les développeur au rôle du serialVersionUID et de gérer manuellement cet attribut sur chaque classe Serializable.
- En cas de problèmes persistants de serialVersionUID, il est envisageable, lors du build, de contrôler les serialVersionUID et de tenir un change log des classes dont la valeur de cet attribut a changé.
[1] A l’inverse, en XML ou en SOAP, la version d’un service est plus simple à gérer en permettant une approche contract first avec laquelle la version du service est gérée dans un seul contrat : le XSD ou le WSDL qui sert à générer le code Java.
Evènements de notre communauté en France et à l’étranger
Certification ScrumMaster par Jeff Sutherland en Mars 2008
La session se remplit à vitesse grand V. Si vous souhaitez être certifié par le père fondateur de la méthode Scrum et échanger avec lui sur son expérience de 10 ans sur le sujet, nous ne saurions que trop vous conseiller de vous inscrire.
Pour en savoir plus ou s’inscrire c’est ici.
Paris JUG
Le Paris Java User Group est un groupe d’utilisateurs Java ayant pour but de réunir les acteurs du langage (professionnels, communautés open source, institutions, étudiants, enseignants…) afin d’échanger des idées et de discuter des avancées technologiques de la plateforme Java. Des JUG se sont créés sur tous les continents, tous les pays. Pendant longtemps ce type de club était représenté par le Club-Java qui avait plus ou moins le même objectif, mais sans être déclaré comme JUG, donc sans le support officiel de SUN. Le Club-Java ayant disparu depuis presque deux ans, Antonio Goncalves et David Dewalle ont décidé de créer le JUG de Paris. L’inauguration aura lieu le 12 Février 2008, inscrivez vous vite !
Commentaire
4 réponses pour " Revue de Presse Xebia "
Published by Alexis MP , Il y a 15 ans
[JUG] je ne comprends pas : qui n’a pas le support de Sun?
Published by Cyrille Le Clerc , Il y a 15 ans
Le Paris Java User Group fait partie de la Java User Groups Community et bénéficie à ce titre de nombreux programmes de soutien tels que le Sun JUGs program. On citera, pour illustrer la qualité des intervenants que Sun fait intervenir auprès des JUGs, la participation de James Gosling (fondateur de Java) au San Diego Java User Group d’Aout 2007 et il y en a beaucoup d’autres exemples.
Cyrille (Xebia)
Published by shebert , Il y a 15 ans
A propros des EJB 3.x et l’information qu’ils ne seront dispos que sous WebSphere, c’est complètement faux. Et Glassfish ? Enfin, pour avoir développé sous Spring, je dois dire avoir été bluffé par les EJB. Spring a sorti les annotations dans la version 2.5 bien après les EJB 3, donc on ne peut pas dire que les EJB 3 font figure de « suiveur ».
Enfin, je dois dire avoir été terriblement déçu par la v2.5 de Spring – alors que j’avais adoré la 1.2 qui m’a fait abandonner les EJB 2.x – (nombreux bugs dans la v2.5, support de JPA excellent mais exemples de configuration souvent incomplets notamment pour les transactions, documentation très dispersée, et les bouquins écrits par Interface21 même comme « Buiding J2EE Applications with Spring 2 » manquent clairement de clarté et de cohérence).
De plus, plutôt que de chercher à mettre en concurrence systématiquement Spring et les EJB, ne vaut-il mieux pas utiliser les EJB3 et Spring ensemble -> par exemple,
Business Logic : SessionBeans en façade (utilisation des CMT / Remoting si besoin et, Services Web) + JPA (qui fait l’objet d’une JSR séparée des EJB) pour la persistence avec des POJO Spring pour les DAO (ou EAO)/Entities
Spring MVC : Pour le Web (qui est bien plus simple et plus léger que JSF même si je pense que chacun a ses avantages et ses inconvénients).
A lire donc -> EJB3 in Action
Published by Cyrille Le Clerc , Il y a 15 ans
Bonjour Schebert,
> A propros des EJB 3.x et l’information qu’ils ne seront dispos que sous WebSphere, c’est complètement faux.
Autant pour moi, ma phrase concernant Websphere manquait de clarté.
Java EE 5 et ses EJB 3 ne sont toujours pas supportés par JBoss AS et Websphere, deux des trois serveurs d’application leaders (en parts de marché). Beaucoup de clients concernés par ce retard choisissent en attendant SpringFramework et leur retour vers EJB 3.x n’est pas assuré.
Des versions sont annoncées mais toujours pas release ni certifiées [1]:
– JBoss AS 5 est en beta 4.
– Websphere 7 n’est toujours pas annoncé [2].
> Spring a sorti les annotations dans la version 2.5 bien après les EJB 3, donc on ne peut pas dire que les EJB 3 font figure de “suiveur”.
Je vous rejoins sur la frilosité passée de Spring concernant les configurations non XML (annotation et programmative). Le grand innovateur en la matière nous a semblé être Google Guice. Sa sortie a bousculé Spring qui rattrape son retard même si le projet Spring Java config n’est toujous pas releasé.
En revanche, Spring nous semble aujourd’hui innovant sur des sujets comme la gestion des configurations (XML, annotations), l’utilisation de techniques AOP pour ajouter du comportement, la simplification des tests unitaires, etc.
Par ailleurs, l’inertie de l’installation de nouvelle versions de serveurs d’application face à la simplicité de monter de version les jars Hibernate ou Spring Framework font que les innovations de Spring sont souvent disponibles aux équipes de développement de nombreux mois avant celles embarquées par les serveurs d’application (quand EJB 3.1 sera-t-il disponible sur le très répandu Websphere ? ) [3].
>… déçu par la v2.5 de Spring …
La réduction des fichiers de configuration XML grâce à l’utilisation de namespace nous a semblé être une innovation très intéressante de Spring 2.0. Ce mécanisme est aujourd’hui largement utilisé par des produits comme Mule ESB ou CXF pour ne citer qu’eux.
Ensuite, le renommage de la version 2.1 en 2.5 était-il justifié étant donné les nouveautés ? On peut se poser la question.
Cyrille (Xebia)
[1] cf Sun : Java EE compatibility
[2] un Feature Pack for EJB 3.0 for WebSphere Application Server V6.1 est disponible mais son installation rebute souvent les équipes d’exploitation et de développement.
[3] Billy Newport, responsable de Websphere eXtreme Scale, décrit très bien ce problème d’inertie dans End of the road for invasive middleware? (2005).