[Java] Java EE 6: Profil Web

Vous êtes probablement au courant déjà de la JSR 316 qui groupe les spécifications du futur Java EE 6 et qui consiste à subdiviser le stack Java EE en profils spécifiques à des besoins particuliers.
Indéniablement, le profil le plus intéressant est le Profil Web.

Roberto Chinnici, le co-lead de la spécification Java EE 6, a publié sur son blog une première proposition pour le profil Web, en précisant que les membres du groupe d’expert en charge ne sont pas arrivé à se mettre d’accord sur une seule proposition (compréhensible et logique vu le nombre impressionnant de technologies et standards impliqués), et qu’ils voudraient récupérer l’avis de la communauté.

Il propose donc deux versions que voici:

[Suite:]

Version A:

  • Servlet 3.0
  • JSP 2.2
  • JSR-45 (Support de débogage d’autres langages que Java)
  • EL 1.2
  • JSTL 1.2
  • JSR-250 (Annotations standard)

Version B:

  • Servlet 3.0
  • JSP 2.2
  • JSR-45 (Support de débogage d’autres langages que Java)
  • EL 1.2
  • JSTL 1.2
  • JSR-250 (Annotations standard)
  • EJB 3.1 Lite: Un sous ensemble d’EJB 3.1, mais pas encore défini
  • JTA 1.1
  • JPA 2.0
  • JSF 2.0 (Provoque une controverse)
  • Web Beans 1.0 (Idem)
  • etc.

Personellement, je préfère la version A, plus légère, mais surtout générique dans le fait qu’elle n’impose pas de framworks particuliers (web=JSF, persistence=JPA), et qu’elle se présente plutôt comme un support sur lequel reposent les autres framworks comme Wicket ou Struts, etc. côté web et Hibernate, iBatis, etc. pour la persistence.

Bien que j’utilise principalement JSF et JPA, je ne crois pas que les inclure dans le profil web soit une bonne idée vu que c’est en quelque sorte imposer quoi utiliser comme framework web et persistence, or l’un des atouts (problèmes ?) de l’ecosystème Java est jsutement la diversité du choix.
En fait, ce qui me dérange vraiment, c’est surtout l’inclusion de l’EJB (même lite) dans la version B: Je ne vois plus en quoi le profil Web va différer du stack complet, et ça va compliquer encore la mise en place d’implémentations de conteneurs web (Tomcat/Jetty).
De plus, je crois que Spring a déjà prouvé son efficacité dans ce domaine là.

Vous en pensez quoi ? Vous choisissez la version A ou B ?

—-

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: