Dans une récente interview avec InfoWorld, Thomas Kurian, président du développement produit chez Oracle, a annoncé une série d'améliorations potentielles en cours de planification pour Java EE 8. Le mouvement est censé être lancé pour apaiser les critiques récentes (comme celles provenant des Java EE Guardians) et les efforts divergents (comme le MicroProfil). Bien que la déclaration actuelle ressemble à une simple déclaration d'intention, d'autres détails seront dévoilés à JavaOne 2016.
La communauté des développeurs Java a été de plus en plus préoccupée par l'avenir de Java EE, au point que, en mai de cette année, le Comité exécutif JCP a envisagé d'envoyer une motion officielle à Oracle en demandant une réponse sur son engagement et les plans de Java EE. La motion n'a pas abouti, mais elle a été enregistrée au procès-verbal de la réunion et a évolué dans les faits en motion non-officielle. Environ un mois après, une pétition change.org a été déposée par les Java EE Guardians pour encourager Oracle à ne pas lâcher Java EE, avec 3 300 signataires à ce jour.
On peut être tenté d'interpréter ces initiatives comme des cas isolés d'utilisateurs insatisfaits ; certes, plusieurs des Java EE Guardians sont d'anciens employés d'Oracle. Cependant, de plus en plus de membres de la communauté semblent en ajouter aux critiques : au-delà des signatures de la pétition change.org, un groupe appelé "To EE or not to EE" s'est entretenu à Devoxx UK le 8 Juin, où de nombreux développeurs ont posé des questions et exprimé leur inquiétude à propos de l'avenir de Java EE, in situ et sur Twitter. En outre, des auteurs de bibliothèques ont indiqué que les fonctionnalités de Java EE 8 pouvaient se révéler insuffisantes pour fournir une alternative viable aux bibliothèques qu'ils produisent, comme Tatu Saloranta, développeur principal de Jackson, l'a déclaré lorsqu'il fut interrogé à propos de la nouvelle version de JSON-B.
C'est dans ce climat qu'Oracle a publié sa promesse de nouvelles fonctionnalités dans Java EE 8. Bien que la JSR actuelle pour Java EE 8 ne comprenne que trois nouvelles grandes bibliothèques (JCache, JSON-B et MVC), Kurian a mentionné les points suivants :
- Bases de données : support à la persistance des données dans un entrepôt de clé-valeur, basé sur NoSQL et un modèle de transaction pour la consistance éventuelle et les transactions lâches.
- Sécurité : support d'OpenID et d'OAuth.
- Gestion de déploiement : une spécification pour les services d'application multi-tenancy et support pour Docker.
- Asynchronisme : un nouveau modèle pour la programmation réactive et support pour la communication asynchrone dans HTTP/2.
Avec cette annonce, Kurian a souligné qu'"Oracle a un plan très clair pour Java EE 8". Cependant, il n'y a pas de JSR pour les fonctionnalités mentionnées, ce qui signifie que soit le travail reste encore à amorcer, ce qui impliquera des retards importants dans Java EE 8, ou qu'Oracle travaille en privé sur ceux-ci, ce qui irait à l'encontre de la transparence prônée par le JCP. A ce stade, il peut être intéressant de mettre en exergue un courriel prétendument envoyé par un employé bien placé chez Oracle comprenant les extraits suivants :
Oracle n'est pas intéressé à donner du pouvoir à ses concurrents et ne veut pas partager l'innovation.
La société fais subir une cure à Java EE (Enterprise Edition), mais elle ne veut pas non plus que quelqu'un d'autre travaille sur Java ou sur Java EE à l'écart du JCP (Java Community Process). "Ils ont une mentalité le-gagnant-remporte-toute-la-mise et ils ne sont pas intéressés par la collaboration".
Le courriel suggère que les membres du JCP publient des lettres ouvertes aux clients d'Oracle pour les avertir de ce qui est infligé à Java. Oracle ne coopérera jamais avec une "Fondation Java" et conservera sa propriété intellectuelle.
Étant donné que ces modifications sont destinées à adapter Java EE au Cloud, et compte tenu de la concurrence féroce à laquelle Oracle est confronté en tant que fournisseur de cloud (IBM, Amazon, Microsoft ou CloudBees, pour ne citer que quelques-uns, ciblent également ce marché), il serait logique pour Oracle d'essayer d'utiliser Java EE comme levier afin d'augmenter sa part de marché, même si cela aurait probablement comme conséquence de se mettre à dos la communauté de développement Java. Nous allons devoir attendre de nouvelles annonces en septembre lors de JavaOne pour comprendre ce que sera l'avenir de Java EE.