Bad press, good call
Oracle pushes cloud features back to Java EE 8
Breaking promises is something that Oracle seems to be doing a
lot of at that moment. Just after the dust has settled from the
Project Jigsaw debacle, there’s been yet another
setback in Oracle’s Java roadmap, after it emerged that key cloud
features look set to miss out on Java EE 7.
In a blogpost late last week, spec lead for the next enterprise version of Java (JSR 232) Linda DeMichiel revealed a variety reasons for their latest proposal to postpone:
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.
It sounds to us that Oracle bit off more than it could
chew when it spent much of 2011
proclaiming that Java EE 7 would finally bring
enterprise-grade cloud support. In fact, the
introduction of multi-tenancy was to be
the big draw for the release, as was the inclusion of a APIs
made for seamless cloud environments.
De Michiel went on further to explain that for Oracle to provide solid standardisation, it would delay the release of Java EE 7 until Spring 2014 at the earliest, and two years behind schedule.
Unlike the Project Jigsaw announcement, which split the community down the middle, this decision has been commended appears to be the correct one, with names coming out in support of this proposal, notably those who sit on the Java EE 7 Expert Group.
Red Hat’s Pete Muir wrote:
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).
TomEE creator David Blevins
wrote on the Java EE platform mailing list
that he found it “to be quite a
relief”, adding that whilst “Java EE is
already 90% cloud-ready due to its focus on clear packaging,
deployment and portability” the unmet 10% of cloud
needs are in a “time of experimentation, not
We couldn’t agree more with him here. To even think about standardizing what is a market in flux was a bad move to begin with, and at least Oracle have heeded the warning before it was too late. As has been shown by Red Hat’s OpenShift and VMware’s Cloud Foundry, platform-as-a-service is still very much a blank canvas for testing new ideas.
As alluded to in DeMichiel’s blogpost, Oracle understand that several vendors - such as Red Hat and CloudBees - are already partially providing some of Java EE specification in their cloud solutions. For them to wade in and start afresh just didn’t make sense.
It’s quite clear that Oracle seem more interested in pursuing options alongside other vendors with the big reveal last week of CAMP - an early draft for interoperability across the board to ease private and public cloud management. That’s something which is definitely not mature enough to chuck into a Java EE 7 specification, so it’s well worth Oracle’s while to flesh it out, alongside those already well invested in cloud technologies. Undoubtedly, competitor input is invaluable to the future cloud-focused moves for Java EE 7.
So what does this mean for the enterprise roadmap? In terms of what stays in Java EE 7, we can expect HTML5 advances with the addition of Web Sockets and JSON-P and the JAX-RS 2.0 client API. To us, this is a bit wafer-thin compared to the proclamation of 12 months ago, but is admittedly the right decision for Java EE 7.
Should the Expert Group ratify the decision, the multi-tenancy aspects will be bumped until at least the spring of 2015. With Oracle’s recent tardiness (they’ve already pushed Java EE 7 back once), don’t take that as gospel.
From the outset, this looks like another dark day for Oracle when it was the only call to make. Java EE is certainly not ready for standardised cloud features just yet, and anyone wanting a more advanced feel should look to a third party vendor.
If Oracle are guilty of anything here, it was that they rushed in too soon with claims they had no chance of fulfilling to a releasable standard.
The real concern here is that both Java SE 8 and Java EE 7 look a bit barren of innovation. With nothing gamechanging about the new releases, you'd expect many will stick to what they’ve got and that doesn’t bode well down the road for Java. Crucially, will enterprises care when they get their second bite at the cloud cherry?