Oracle Dropping Cloud Support from Java EE 7 Plans
In a move that is becoming rather familiar, Oracle has announced that it is looking to reduce the scope of Java EE 7 in order to keep development on track, by deferring PaaS and multi-tenancy support to Java EE 8. Linda DeMichiel, the specification lead for Java EE 7, announced the change via a blog post.
Despite our best intentions, our progress has been slow on the cloud side of our agenda. Partially this has been due to a lack of maturity in the space for provisioning, multi-tenancy, elasticity, and the deployment of applications in the cloud. And partially it is due to our conservative approach in trying to get things "right" in view of limited industry experience in the cloud area when we started this work. Because of this, we believe that providing solid support for standardized PaaS-based programming and multi-tenancy would delay the release of Java EE 7 until the spring of 2014 — that is, two years from now and over a year behind schedule. In our opinion, that is way too long.
We have therefore proposed to the Java EE 7 Expert Group that we adjust our course of action — namely, stick to our current target release dates, and defer the remaining aspects of our agenda for PaaS enablement and multi-tenancy support to Java EE 8.
DeMichiel points out that a number of vendors, such as Red Hat and CloudBees, already provide support for at least parts of the Java EE specifications in their cloud environments, and as they gain more experience in this area they should be able to help the standardization effort. She has received strong backing for her proposal from the Expert Group, who also echo this point.
Pete Muir, Red Hat's CDI lead, responded
Speaking as a Java EE implementor, we (Red Hat) are very much in support of this. We've long advocated that we, the Java EE community are not ready to standardise cloud yet, and feel this is proven by OpenShift, our Java EE cloud offering, which is working well with Java EE 6.
Speaking as a spec lead, we're also in support of this, modulo understanding and agreement on what this means for the schedule of the specs we lead (CDI and Bean Validation).
Jevgeni Kabanov, founder and CEO of ZeroTurnaround, wrote
I strongly support this, as my feel was always that Cloud standardisation was premature and we needed more time to understand which way the market and community will swing. At the moment, although there is a lot of activity in the cloud direction, it isn't yet clear which technologies, methodologies and philosophies will be the winners. Hopefully, in another 2-3 years it will be clearer.
Just to echo some of the sentiments of others, I also support this and find it to be quite a relief.
Java EE is already 90% cloud-ready due to its focus on clear packaging, deployment and portability -- concepts we've taken it on the chin over at times in the past, which are paying dividends now. Very vindicating. When it comes to the last 10% of unmet cloud needs, we are clearly in a time of experimentation, not a time of standardization.
No doubt this will be seen as some sort of failure by those who don't understand the role specifications play in the market, when in fact this is a prime example of an excellent long term decision and the value specifications bring.
Vendors innovate, collectively we standardize. We're not done innovating in this space.
With cloud support removed, Java EE 7 loses a significant headline feature, but there are plenty of welcome changes and additions, including JAX-RS 2.0, an updated JMS API, version 3 of the Expression Language, and HTML 5 support, as well as updates to JPA and CDI.
Politically, coming so soon after the decision to defer Jigsaw for a second time, now to Java 9, the move is an uncomfortable one for Oracle, and back-tracking on over-ambitious project plans is becoming something of a theme of Oracle's stewardship of Java. But the decision is clearly the right one, and DeMichiel and Oracle deserve credit for it.