La destinée de Java passera par Oracle, qui a acquis Sun Microsystems en janvier dernier. Mais est-ce vraiment le cas en pratique ? Outre son invention, Sun a aussi piloté le développement d'éléments périphériques, tel que le serveur d'application GlassFish, référence Open Source d'implémentation de Java en entreprise. L'éditeur détient un pouvoir décisionnel notable au sein de la Java Community Process (JCP), structure officielle pour modifier le langage.
Un écosystème complexe
Il y a d'autres intervenants dans les orientations de Java. Au-delà des prises de décision de Sun, d'autres acteurs ont en effet apporté des compléements sur Java. Apache Software Foundation, Eclipse Foundation, Jboss et SpringSource (propriété de VMware) ont contribué à l'écosystème sans attendre l'aval de Sun. Par exemple, le framework Spring pour le développement sous Java a servi d'alternative aux technologies approuvées par la JCP. Apache a lui aussi construit des implémentations en propre par rapport à la technologie Java officielle.
Si Oracle est l'acteur le plus puissant sur cette scène, il n'est cependant pas le seul décisionnaire quant à l'avenir de la plateforme et du langage associé. Il n'est même peut-être pas le réel moteur de ses innovations. « Il est clair que la plupart des évolutions dont nous sommes les témoins dans l'univers Java aujourd'hui ne provient pas d'Oracle » lance Rod Johnson, créateur du framework Spring. Il cite sa propre société, ainsi que Google Web Toolkit et les outils Eclipse comme principaux exemples. Tout à son honneur, cependant, Sun continue de rendre ceci possible via la mise à disposition de Java. Son créateur, James Gosling, a encouragé une telle ouverture avant même que Sun le fasse passer en Open Source en 2006.
SpringSource et Eclipse, des frondeurs à stratégie différentes
Sorti en 2004, et téléchargé à peu près trois millions de fois, le framework Spring a été développé, selon Rod Johnson, afin de fournir une alternative plus simple aux technologies officielles Java, comme J2EE et Enterprise JavaBeans, trop compliquées à implémenter. « Je pense sincèrement que nous sommes arrivés au point où le framework Spring est le choix logique pour le développement Java pour les entreprises aujourd'hui » ajoute-t-il.
[[page]]
Eclipse, avec son IDE (Integrated Development Environment) et autres technologies Open Source, a lui aussi été un des acteurs majeurs pour les développeurs. « Eclipse a été fondé dans le but de fournir un environnement au sein duquel les innovations concernant Java pouvaient s'épanouir » raconte le Directeur Général de l'entreprise, Mike Milinkovich (ancien d'Oracle). Mais il affirme que celle-ci ne souhaite pas entrer en conflit avec Oracle, qui participe à l'activité de la société. L'éditeur de base de données supervise en effet certains projets et paie 250 000 $ par an à la fondation, étant même représenté au conseil d'administration d'Eclipse. Avant Oracle, Sun se refusait à participer à la fondation Eclipse, et se présentait plutôt comme son concurrent via notamment l'IDE NetBeans.
Apache et Jboss : moins de conflits qu'avec Sun
Pour Apache, son serveur web Java, Tomcat, a été le premier à implémenter les spécifications Java précise Geir Magnusson, vice président de la JCP pour Apache. D'autres outils de built comme Maven et Ant ont été créés sans la participation de Sun. Dernièrement, une technique de mapping objet-relationnel pour Java appelée Cayenne version 3.0 a été lancée. Pour autant, Apache et Sun ont été en conflit, qui perdure avec Oracle, au sujet de la mise à disposition d'un kit de compatibilité pour l'implémentation de Java dans Apache Harmony. « Sun semblait protéger désespérément Java Micro Edition, sauf que la licence proposée aurait limité les usages d'Harmony » affirme Geir Magnusson.
Quant à Jboss, il a aussi été un des pionniers dans la mise en place de serveurs Java Open Source. « C'était clairement en dehors du procédé J2EE tel qu'il était conçu à l'époque » se souvient Mark Little, directeur du développement du middleware chez Red Hat, propriétaire de Jboss depuis 2007. Sun avait tenu à l'écart Jboss des procédés Java, mais l'entreprise fait désormais partie du JCP, conduisant la mise en place de spécifications comme CDI (Context Dependency and Injection framework).
Dans l'attente d'une réponse positive d'Oracle
Malgré ces acteurs relativement indépendants et rivaux, Java a besoin d'Oracle pour survivre, selon Mike Milinkovich. Oracle contrôle en effet le JCP, et dirige à la fois GlassFish et OpenJDK qui est la référence Open Source de l'implémentation de Java. « Si Oracle peine à orienter Java dans la bonne direction, il y aura fatalement des répercussions négatives pour tous les acteurs de l'écosystème » constate le directeur d'Eclipse. Mais il reproche à la firme de Redwood d'être « bien trop silencieux depuis l'acquisition. Nous attendons un peu de leadership de leur part ». L'éditeur a souhaité que le JCP soit un processus de décision un peu plus ouvert, et pourrait devenir un gérant plus efficace de Sun s'il continue sur cette lancée, selon Mark Little. Il ajoute que l'ancien propriétaire était un bon administrateur de Java jusqu'à ce qu'il se mette à vouloir concurrencer IBM, notamment. « A partir du moment où ils ont commencé à vouloir entrer dans une logique de compétition, il en a résulté un conflit d'intérêt insoluble, et par extension, un ralentissement des activités du JCP à cause de raisons commerciales plutôt que techniques. Si Oracle agit de façon similaire, ils désintègreront probablement la communauté ».
Un sondage des utilisateurs de logiciels Open Source a révélé qu'Oracle était considéré comme un meilleur intendant de Java et de MySQL par rapport à Sun. Jaspersoft, société fournissant un logiciel de BI Open Source, a interrogé 500 de ses clients concernant ce qu'ils entrevoyaient pour le futur de Java et de la base de données. Le résultat est que la plupart des grandes entreprises sondées planifiaient une utilisation plus intensive de Java, et qu'elles s'attendaient à voir une amélioration de MySQL sous la direction d'Oracle. 80% d'entre elles pensent que Java va lui aussi s'améliorer ou au moins rester identique. A suivre donc.
Crédit Photo : D.R.
L'avenir de Java, entre conflits et alliances avec Oracle
L'éditeur de Redwood est peut-être le propriétaire de Java, mais SpringSource, Apache, JBoss et Eclipse ont aussi leur mot à dire quant à la suite du développement de celui-ci.