Archives pour décembre, 2008

Retours sur l’Aquarium Paris de Sun (2e partie)

Dans ce billet, je vais parler exclusivement de la conférence donnée par Roberto Chinicci sur la plateforme JavaEE6

JavaEE6
 
Roberto Chinnici, ingénieur pour Sun, qui a participé à diverses spécifications pour JavaEE6, est venu nous parler de cette nouvelle plateforme. Le but principal de la nouvelle version de Java Entreprise Edition sera d’accroître sa facilité d’utilisation et d’apprentissage, de la rendre également plus flexible, et plus "agile".
 
Les nouveautés
 
En ce qui concerne les nouveautés, les composants suivants seront intégrés à la plateforme :

Pour les versions de maintenance :

  • JAXB 2.2
  • JAX-WS 2.2
  • JAX-RS 1.1
  • EL 1.2
  • JSP 1.2

Enfin, certains composants voient leur intégration encore incertaine :

  • l’authentication SPI (JSR 196)
  • concurrent utilities for JavaEE (JSR 236)

Les profils
 
A cela va s’ajouter le principe des "profils". Il s’agit concrètement d’un regroupement de technologies plus ou moins communes. Le premier profil disponible (et pour l’instant le seul existant) sera le "Web Profile", comprenant :

  • Servlets 3.0
  • JSP 2.1
  • JSR 45
  • EL 1.2
  • JSTL 1.2
  • JSF 2.0
  • EJB Lite 3.1
  • JTA 1.1
  • JPA 2.0
  • JSR 250

ainsi que peut-être :

  • JAX-RS 1.1
  • WebBeans 1.0

Là se pose la question de la pertinence de ces modules. Certes, l’intérêt principal est d’alléger la plateforme, en ne fournissant que les technologies utiles. Par exemple, le développement d’une application non web n’aura que faire des Servlets ou encore de JSF ! Cependant, ne risque-t-on pas de multiplier les versions différentes de la plateforme JavaEE 6 ? La question est posée, sans doute y verra-t-on plus clair une fois que JavaEE6 sera disponible…

A noter que la création de nouveaux profils devra passer par un processus "JCP" (Java Community Process). Autant dire qu’il ne devrait pas y avoir pléthore de profils disponibles (cela peut être vu comme un avantage cela dit) !
 
"Elagage"
 
Un autre aspect de cette nouvelle plateforme est le "pruning" que l’on traduira par "élagage". Il s’agit tout simplement de définir des technologies comme optionnelles. On y retrouve ainsi :

  • JAX-RPC (remplacée par JAX-WS)
  • EJB Entity Beans (remplacée par JPA)
  • JSR 88 (une API de déploiement d’applications qui n’a jamais été adoptée)
  • JAXR

Ces technologies seront marquées dans la Javadoc comme optionelles, un peu à la façon dont on identifie les méthodes ou classes dépréciées avec le @deprecated.
 
Extensibilité

Toujours dans le but de faciliter l’utilisation de JavaEE6, Sun désire offrir un véritable mécanisme de support et de configurations de frameworks open-source. Il s’agirait, d’après ce que j’ai compris, de disposer d’un moyen générique de configurer des frameworks externes afin qu’ils puissent se "plugger" directement sur JavaEE6. Autre point d’importance : la plateforme facilitera le support des langages de scripting comme JRuby, Grails par exemple… Hélas, peu d’informations précises n’ont été données sur cette partie-là, mais c’est à surveiller de près !
 
Nouvelles technologies
 
Servlets 3.0
 
Enfin une nouvelle version des Servlets ! Grâce à cette nouvelle version, la configuration de nos servlets passera par trois parties :

  • des annotations, comme @WebServlet, @ServletFilter…
  • toujours le web.xml, mais qui deviendra plus léger
  • des fragments de web.xml, qui permet de définir des parties de web.xml dans d’autres fichiers XML (un fragment par servlet ou par librairie par exemple).

Autres nouveautés apportées par cette version :

  • une API pour enregistrer dynamiquement des servlets (lors du démarrage de l’application)
  • le traitement asynchrone.

Concernant ce dernier point, il suffira d’annoter sa servlet avec @WebServlets(asyncSupported=true), puis d’utiliser les méthodes forward(String path), start(Runnable action) et complete().
 
EJB 3.1
 
Quelques nouveautés aussi du côté des EJB. Tout d’abord la possibilité de créer des EJB singleton grâce à l’annotation @Singleton. Il sera désormais possible de se passer de l’interface, et de n’avoir dès lors qu’une seule classe par type de bean. Nous y voyons aussi l’introduction des timers, toujours grâce aux annotations : @Schedule(dayOfWeek="Mon", hour="3", minutes="30" ).

Une autre annotation qui apparaitra sera celle @Asynchronous. Enfin, il sera possible d’adresser directement un bean via un nom JNDI de la forme suivante :

"java:global/(app)/(module)/(bean)#(interface)"
 
EJB 3.1 Lite
 
Une version "light" des EJB va aussi voir le jour. Cette version allégée est un sous-ensemble des EJB destiné avant tout à un usage externe à une plateforme complète. Elle pourra être utilisée par exemple avec JavaSE. Celle-ci comprendra :

  • les sessions beans (statefull, stateless, singletons)
  • les transactions et la sécurité
  • les interceptors
  • ejb-jar.xml

A noter que cette version pourra être packagée directement au sein d’un WAR (et sera par conséquent présent dans le même classloader que l’application).
 
Dates de sortie
 
Dernier point concernant la plateforme JavaEE6, ses dates de sorties :

  • janvier 2009 pour l’ensemble des spécifications
  • février 2009 pour un "final draft"
  • mai 2009 pour la release.

De mon point de vue, même si je suis assez sceptique quant à l’introduction des profils, j’attends avec impatience cette plateforme, et en particulier les technologies liées au développement web (JSF 2.0, Servlet 3.0, WebBeans). A noter que GlassFish v3 devrait être en mi-2009 le premier serveur d’applications à disposer d’une compatibilité totale avec JavaEE6. Un autre bon point pour l’adoption de ce serveur !
 
A suivre…

Retours sur l’Aquarium Paris de Sun (1e partie)

Avec un peu de retard, je reviens sur la conférence Aquarium Paris de Sun.

En voici la première partie, qui parle essentiellement des conférences du matin.

Contexte

Sun a organisé, le vendredi 12 décembre 2008, une journée entière consacrée à ses outils open-source.
Il s’agissait de l’"Aquarium Paris".

En voici le résumé :

Que vous soyez décideurs ou développeurs, cette journée est l’occasion de rencontrer les acteurs de Sun qui président aux destinées des technologies et solutions Open Source de Sun Microsystems, du middleware au client riche (RIA) en passant par les ESB. Entre "Spec Leader" de JSR, leaders techniques des projets Open Source stratégiques et retours d’expérience, la journée sera riche en information pour tous. Une introduction de 9h à 10h30 sera consacrée à la vision globale de Sun et de ses partenaires autour de réalisation sur la base de technologies Open Source. Le reste de la journée sera consacrée aux présentations techniques.
 
Salle Solaris Présentateur Salle UltraSPARC Présentateur
Bienvenue et stratégie open-source Jean-Yves Pronier    
Témoignage client SFR : Developer Zone Cyrille Manente    
JavaEE 6 overview Roberto Chinnici OpenESB et Projet Fuji Andi Engloff
Jersey / JAX-RS Paul Sandoz Grizzly Comet Jean-François Arcand
OpenSSO Alain Barbier OpenDS Ludovic Poitou
 
GlassFish v3 Prelude Alexis Moussine-Pouchkine Le point sur MySQL Serge Frezefond
JavaFX Richard Bair Java DB (annulé)  
JavaFX Tooling Martin Brehovsky OpenMQ et JMS patterns Linda Schneider
Nuxeo WebEngine Bogdan Stefanescu XWiki et GlassFish Thomas Mortagne
IzPack et GlassFish Julien Ponge Hudson Romain Linsolas

 

Accueil et stratégie open-source de Sun

Jean-Yves Pronier (directeur marketing de Sun) nous a acceuilli pour cet Aquarium Paris, puis a enchaîné en nous parlant de la stratégie open-source de Sun.
Depuis plusieurs mois maintenant, le JDK de Sun est passé en open-source, et de nombreux outils développés par Sun le sont également. Jean-Yves Pronier en a donc profité pour nous présenter le modèle business de Sun.
 
Ce modèle se divise en deux catégories. D’un côté, le "libre", comprenant :
  • le code source
  • les exécutables
  • le support sécurité
  • les forums
  • le " Developer Program "
De l’autre côté, leurs services payants :
  • le support commercial
  • les formations
  • les mises-à-jour
  • les bases de connaissances
  • le conseil
  • l’intégration
  • les serveurs
  • le stockage

Concernant ces services payants, Sun propose l’offre de "Subscription", disponible en plusieurs versions : "standard", "premium" et "premium plus".
Du côté open-source, aspect qui nous intéresse tout particulièrement (d’autant que c’est le leitmotiv de la journée), il faut avouer que Sun est un acteur majeur dans le domaine, proposant un "portefeuille" complet, proposant des solutions à tous les niveaux :

  • les applications, avec Open Office par exemple
  • le stockage de données (MySQL)
  • la gestion des données, avec des IDE (NetBeans), des serveurs d’applications (GlassFish), ou tout simplement Java !
  • la virtualisation (Sun xVM)
  • les systèmes d’exploitation (Solaris ou OpenSolaris)
  • les systèmes
  • l’architecture (OpenSparc, UltraSparc)
Jean-Yves Pronier nous a ensuite présentés quelques produits de Sun, en
parlant plus particulièrement de leur évolution durant cette année.
 
Ainsi, au courant de l’année 2008, le SDN (Sun Developer Network) a accueilli 1 million de nouveaux utilisateurs (pour un total de 3 millions). Beau succès pour ce service, qui a par ailleurs récompensé les nouvelles versions de NetBeans ou encore Sun Studio. A propos de l’IDE préféré de Sun, NetBeans a été téléchargé 4,5 millions de fois durant l’année, avec un demi millions d’utilisateurs actifs.
 
Un autre produit important de Sun, GlassFish, a été aussi évoqué. Ce serveur a été téléchargé 4 millions de fois (!) et a ainsi vu son taux d’utilisation multiplié par 10 en l’espace de 12 mois. Aspect non négligeable, GlassFish est désormais utilisé en production, ce qui montre la fiabilité de l’outil, mais également la confiance qu’il procure.
 
MySQL n’est pas en reste non plus, puisqu’il s’est téléchargé environ 67.000 par jour. Sun insiste à ce propos sur le rapport fonctionnalités-prix de leur base de données, en montrant que le "TCO" (Total Cost of Ownership, soit le coût total d’acquisition) sur 3 ans était très largement inférieur par rapport aux autres produits du marché (Oracle étant largement devant ;)).
 
Enfin, un dernier point concernait leur environnement Solaris, qui a disposé de 4,7 millions de nouvelles licences en 200.
 
En conclusion, une introduction asse complète, certes avec pas mal d’aspects commerciaux – mais c’est normal, mais montrant l’ensemble des produits phares de Sun.
 
Témoignage client de SFR : la Developer Zone
 
Cyrille Manente, de SFR, est venu nous présenter leur retour d’expérience de divers produits Sun, en parlant de leur Developer Zone.
 
Cette Developer Zone est un écosystème, fondé sur un SDK (Software Development Kit) SFR aux standards du web, offrant un accès simples aux valeurs ajoutées proposées par SFR, et dont le but est de créer des applications mobiles, TV, etc. Elle se divise en trois composantes majeures :
  • la boite à outils (SDK)
  • le portail communautaire, avec une zone publique et une zone privée
  • la plateforme RED

Il s’agit là d’une offre que l’on qualifiera de "B2B2C", c’est-à-dire que SFR propose à des partenaires ("B2B") une plateforme qui permettra à ces derniers d’offrir des nouveaux services à leurs clients ("B2C").

La plateforme RED, qui représente l’un des composants de cette Developer Zone, définit un socle technique pour des développements Java. Cette plateforme est divisée en plusieurs couches, et se base sur des technologies open-source de Sun telles que SunMQ, MySQL, MX4J, JAX-WS ou encore GlassFish.
Le choix de ces outils, en particulier du remplacement de Tomcat par GlassFish, a amélioré grandement la "scalabilité" (horizontale ou verticale) de l’application, qui supporte ainsi bien plus de charge (le système permet par exemple d’envoyer 400 SMS par secondes, via des web-services).

Si la présentation était intéressante, elle a malheureusement manqué de retours concrets sur les valeurs ajoutées des différents choix technologiques, ou encore de chiffres montrant les améliorations apportées par ces choix.

A suivre…

Start Slide Show with PicLens Lite PicLens

PDF des présentations des Valtech Days 2008

Les Valtech Days 2008 ont été un succès. Retrouvez dès aujourd’hui les versions papier (sous format PDF) de toutes les présentations ici !

Bonne lecture, en attendant les vidéos de ces mêmes présentations…

Open Source Sun à l’Aquarium

Sun organise dans une semaine l’"Aquarium Paris", où il sera question de toutes leurs solutions open-sources, de JavaEE 6 à JavaFX (tout juste sorti en version 1.0 d’ailleurs), en passant par GlassFish.

L’évènement est prévu toute la journée du vendredi 12 décembre à Paris.

J’y serais… mais en tant que présentateur B) J’y ferais une démonstration de l’outil Hudson qu’aurait dû présenter Eric Lefevre s’il n’avait pas eu une indisponibilité ce jour-là…

Voici le communiqué officiel de l’Aquarium Paris :

Que vous soyez décideurs ou développeurs, cette journée est
l’occasion de rencontrer les acteurs de Sun qui président aux destinées
des
technologies et solutions Open Source de Sun Microsystems, du
middleware au client riche (RIA) en passant par les ESB.

Entre "Spec Leader" de JSR, leaders techniques des projets Open
Source stratégiques et retours d’expérience, la journée sera riche en
information pour tous.

Une introduction de 9h à 10h30 sera consacrée à la vision globale de
Sun et de ses partenaires autour de réalisation sur la base de
technologies Open Source.

Le reste de la journée sera consacrée aux présentations techniques.

Lien de l’évènement

Start Slide Show with PicLens Lite PicLens

Sortie de l’article sur TeamCity !

Lors d’un précédent billet, je vous faisais part de la sortie de TeamCity 4.0.

Avec Philippe Vialatte, nous avons écrit un test (plutôt complet) de cette nouvelle version, pour le site www.developpez.com.

L’article est aujourd’hui en ligne, ici :D

Bonne lecture, et n’hésitez pas à nous donner vos avis sur l’outil, ainsi que sur notre test !

Start Slide Show with PicLens Lite PicLens